Информатика

7 600 задачвместе с подтемами
Число у задачи — рейтинг сложности, слово рядом — насколько она трудна по сравнению с другими задачами такого же типа. Шкалы задач с ответом и задач с кодом между собой не сравниваются. Рядом — счётчики попыток: успешные, неуспешные.
Задание выполняется с использованием прилагаемых файлов.


Фрагмент звёздного неба спроецирован на плоскость с декартовой системой координат. Учёный решил провести кластеризацию полученных точек, являющихся изображениями звёзд, то есть разбить их множество на N непересекающихся непустых подмножеств (кластеров), таких что точки каждого подмножества лежат внутри прямоугольника со сторонами длиной H и W, причём эти прямоугольники между собой не пересекаются. Стороны прямоугольников не обязательно параллельны координатным осям.

Гарантируется, что такое разбиение существует и единственно для заданных размеров прямоугольников.

Для каждой звезды дана характеристика: тип цвета, тип светимости и её размер в соответствии с таблицей.

ОбозначениеЦвет
Gбелый
Jзелёный
Lсиний
Nоранжевый
Yкрасный
Sголубой
Zжёлтый
ОбозначениеРазмер
Iсверхгигант
IIяркий гигант
IIIгигант
IVсубгигант
Vкарлик
VIсубкарлик
VIIбелый карлик

Полученные значения записаны в характеристике слитно: обозначение цвета, светимость (обозначается арабской цифрой от 1 до 9) и размер звезды. Например, G5III — белая звезда, светимость 5, гигант.

Будем называть центром кластера точку этого кластера, сумма расстояний от которой до всех остальных точек кластера минимальна. Для каждого кластера гарантируется единственность его центра. Расстояние между двумя точками на плоскости \(A(x_1, y_1)\) и \(B(x_2, y_2)\) вычисляется по формуле:

\(d(A, B) = \sqrt{(x_2 - x_1)^2 + (y_2 - y_1)^2}\).

В файле А хранятся данные о звёздах двух кластеров, где H=7, W=5 для каждого кластера. В каждой строке записана информация об одной звезде: сначала координата x, затем координата y, затем характеристика звезды. Значения даны в условных единицах. Известно, что количество точек не превышает 1000.

В файле Б хранятся данные о звёздах трёх кластеров, где H=3, W=7 для каждого кластера. Известно, что количество точек не превышает \(10\,000\). Структура хранения информации о звёздах в файле Б аналогична файлу А.

Известно, что в файле Б имеются координаты ровно трёх «лишних» точек, являющихся аномалиями, возникшими в результате помех при передаче данных. Эти три точки не относятся ни к одному из кластеров, их учитывать не нужно.

Гарантируется, что во всех кластерах обоих файлов количество точек различно.

Яркой парой в кластере будем называть пару различных звёзд этого кластера, расстояние между которыми не превышает \(R = 0{,}3\), а сумма их светимостей не менее 15.

Для файла А определите центр каждого кластера и найдите два числа: \(A_1\) — количество ярких пар в кластере с меньшим числом точек; \(A_2\) — количество ярких пар в кластере с бо́льшим числом точек.

Для файла Б определите центр каждого кластера (без учёта трёх «лишних» точек) и найдите два числа: \(B_1\) — максимальное среди трёх кластеров количество ярких пар; \(B_2\) — расстояние от начала координат до центра того кластера, в котором количество ярких пар максимально.

В ответе запишите четыре числа: в первой строке — \(A_1\) и \(A_2\) через пробел; во второй строке — \(B_1\) и целую часть произведения \(B_2 \times 10\,000\) через пробел.

Задание выполняется с использованием прилагаемых файлов.


Фрагмент звёздного неба спроецирован на плоскость с декартовой системой координат. Учёный решил провести кластеризацию полученных точек, являющихся изображениями звёзд, то есть разбить их множество на N непересекающихся непустых подмножеств (кластеров), таких что точки каждого подмножества лежат внутри прямоугольника со сторонами длиной H и W, причём эти прямоугольники между собой не пересекаются. Стороны прямоугольников не обязательно параллельны координатным осям.

Гарантируется, что такое разбиение существует и единственно для заданных размеров прямоугольников.

Для каждой звезды дана характеристика: тип цвета, тип светимости и её размер в соответствии с таблицей.

ОбозначениеЦвет
Gбелый
Jзелёный
Lсиний
Nоранжевый
Yкрасный
Sголубой
Zжёлтый
ОбозначениеРазмер
Iсверхгигант
IIяркий гигант
IIIгигант
IVсубгигант
Vкарлик
VIсубкарлик
VIIбелый карлик

Полученные значения записаны в характеристике слитно: обозначение цвета, светимость (обозначается арабской цифрой от 1 до 9) и размер звезды. Например, G5III — белая звезда, светимость 5, гигант.

Будем называть центром кластера точку этого кластера, сумма расстояний от которой до всех остальных точек кластера минимальна. Для каждого кластера гарантируется единственность его центра. Расстояние между двумя точками на плоскости \(A(x_1, y_1)\) и \(B(x_2, y_2)\) вычисляется по формуле:

\(d(A, B) = \sqrt{(x_2 - x_1)^2 + (y_2 - y_1)^2}\).

В файле А хранятся данные о звёздах двух кластеров, где H=7, W=5 для каждого кластера. В каждой строке записана информация об одной звезде: сначала координата x, затем координата y, затем характеристика звезды. Значения даны в условных единицах. Известно, что количество точек не превышает 1000.

В файле Б хранятся данные о звёздах трёх кластеров, где H=3, W=7 для каждого кластера. Известно, что количество точек не превышает \(10\,000\). Структура хранения информации о звёздах в файле Б аналогична файлу А.

Известно, что в файле Б имеются координаты ровно трёх «лишних» точек, являющихся аномалиями, возникшими в результате помех при передаче данных. Эти три точки не относятся ни к одному из кластеров, их учитывать не нужно.

Гарантируется, что во всех кластерах обоих файлов количество точек различно.

Для каждой звезды \(s\) определим \(K = 5\) ближайших соседей — пять звёзд того же кластера, расстояние до которых минимально. Звезда \(s\) является яркостной аномалией, если модуль разности между её светимостью и средней светимостью пяти ближайших соседей строго больше \(T = 3\).

Для файла А определите центр каждого кластера и найдите два числа: \(A_1\) — количество яркостных аномалий в кластере с меньшим числом точек; \(A_2\) — светимость (цифра из характеристики) звезды, являющейся центром кластера с бо́льшим числом точек.

Для файла Б определите центр каждого кластера (без учёта трёх «лишних» точек) и найдите два числа: \(B_1\) — количество яркостных аномалий в кластере с наибольшим числом точек; \(B_2\) — расстояние между центрами кластеров с максимальным и минимальным количеством аномалий.

В ответе запишите четыре числа: в первой строке — \(A_1\) и \(A_2\) через пробел; во второй строке — \(B_1\) и целую часть произведения \(B_2 \times 10\,000\) через пробел.

Задание выполняется с использованием прилагаемых файлов.


Фрагмент звёздного неба спроецирован на плоскость с декартовой системой координат. Учёный решил провести кластеризацию полученных точек, являющихся изображениями звёзд, то есть разбить их множество на N непересекающихся непустых подмножеств (кластеров), таких что точки каждого подмножества лежат внутри прямоугольника со сторонами длиной H и W, причём эти прямоугольники между собой не пересекаются. Стороны прямоугольников не обязательно параллельны координатным осям.

Гарантируется, что такое разбиение существует и единственно для заданных размеров прямоугольников.

Для каждой звезды дана характеристика: тип цвета, тип светимости и её размер в соответствии с таблицей.

Обозначение Цвет
G белый
J зелёный
L синий
N оранжевый
Y красный
S голубой
Z жёлтый
Обозначение Размер
I сверхгигант
II яркий гигант
III гигант
IV субгигант
V карлик
VI субкарлик
VII белый карлик

Полученные значения записаны в характеристике слитно: обозначение цвета, светимость (обозначается арабской цифрой от 1 до 9) и размер звезды. Например, G5III — белая звезда, светимость 5, гигант.

Будем называть центром кластера точку этого кластера, сумма расстояний от которой до всех остальных точек кластера минимальна. Для каждого кластера гарантируется единственность его центра. Расстояние между двумя точками на плоскости \(A(x_1, y_1)\) и \(B(x_2, y_2)\) вычисляется по формуле:

\(d(A, B) = \sqrt{(x_2 - x_1)^2 + (y_2 - y_1)^2}\).

В файле А хранятся данные о звёздах двух кластеров, где H=7, W=5 для каждого кластера. В каждой строке записана информация об одной звезде: сначала координата x, затем координата y, затем характеристика звезды. Значения даны в условных единицах. Известно, что количество точек не превышает 1000.

В файле Б хранятся данные о звёздах трёх кластеров, где H=3, W=7 для каждого кластера. Известно, что количество точек не превышает \(10\,000\). Структура хранения информации о звёздах в файле Б аналогична файлу А.

Известно, что в файле Б имеются координаты ровно трёх «лишних» точек, являющихся аномалиями, возникшими в результате помех при передаче данных. Эти три точки не относятся ни к одному из кластеров, их учитывать не нужно.

Гарантируется, что во всех кластерах обоих файлов количество точек различно.

Однородностью звезды \(s\) в её кластере будем называть расстояние от \(s\) до ближайшей к ней другой звезды того же цвета в том же кластере.

Средней яркостью окрестности звезды \(s\) будем называть среднее арифметическое числовых значений светимости всех звёзд того же кластера (не считая саму \(s\)), расстояние до которых не превышает \(R = 0{,}5\). Если таких звёзд нет, средняя яркость окрестности считается равной нулю.

Для файла А определите центр каждого кластера и найдите два числа: \(A_1\) — количество звёзд размера «карлик» (V) в кластере с меньшим числом точек; \(A_2\) — светимость (цифра из характеристики) звезды, являющейся центром кластера с бо́льшим числом точек.

Для файла Б определите центр каждого кластера (без учёта трёх «лишних» точек) и найдите два числа: \(B_1\) — максимальная однородность среди звёзд всех трёх кластеров; \(B_2\) — расстояние от начала координат до центра того кластера, в котором найдена звезда с максимальной средней яркостью окрестности.

В ответе запишите четыре числа: в первой строке — \(A_1\) и \(A_2\) через пробел; во второй строке — целую часть произведения \(B_1 \times 10\,000\) и целую часть произведения \(B_2 \times 10\,000\) через пробел.

Задание выполняется с использованием прилагаемых файлов.


Фрагмент звёздного неба спроецирован на плоскость с декартовой системой координат. Учёный решил провести кластеризацию полученных точек, являющихся изображениями звёзд, то есть разбить их множество на N непересекающихся непустых подмножеств (кластеров), таких что точки каждого подмножества лежат внутри прямоугольника со сторонами длиной H и W, причём эти прямоугольники между собой не пересекаются. Стороны прямоугольников не обязательно параллельны координатным осям.

Гарантируется, что такое разбиение существует и единственно для заданных размеров прямоугольников.

Для каждой звезды дана характеристика: тип цвета, тип светимости и её размер в соответствии с таблицей.

Обозначение Цвет
G белый
J зелёный
L синий
N оранжевый
Y красный
S голубой
Z жёлтый
Обозначение Размер
I сверхгигант
II яркий гигант
III гигант
IV субгигант
V карлик
VI субкарлик
VII белый карлик

Полученные значения записаны в характеристике слитно: обозначение цвета, светимость (обозначается арабской цифрой от 1 до 9) и размер звезды. Например, G5III — белая звезда, светимость 5, гигант.

Будем называть центром кластера точку этого кластера, сумма расстояний от которой до всех остальных точек кластера минимальна. Для каждого кластера гарантируется единственность его центра. Расстояние между двумя точками на плоскости \(A(x_1, y_1)\) и \(B(x_2, y_2)\) вычисляется по формуле:

\(d(A, B) = \sqrt{(x_2 - x_1)^2 + (y_2 - y_1)^2}\).

В файле А хранятся данные о звёздах двух кластеров, где H=7, W=5 для каждого кластера. В каждой строке записана информация об одной звезде: сначала координата x, затем координата y, затем характеристика звезды. Значения даны в условных единицах. Известно, что количество точек не превышает 1000.

В файле Б хранятся данные о звёздах трёх кластеров, где H=3, W=7 для каждого кластера. Известно, что количество точек не превышает \(10\,000\). Структура хранения информации о звёздах в файле Б аналогична файлу А.

Известно, что в файле Б имеются координаты ровно трёх «лишних» точек, являющихся аномалиями, возникшими в результате помех при передаче данных. Эти три точки не относятся ни к одному из кластеров, их учитывать не нужно.

Гарантируется, что во всех кластерах обоих файлов количество точек различно.

Изолированностью звезды \(s\) в её кластере будем называть расстояние от \(s\) до ближайшей к ней другой звезды того же кластера.

Цветовым разнообразием звезды \(s\) в её кластере будем называть количество различных цветов среди звёзд того же кластера (не считая саму \(s\)), расстояние до которых не превышает \(R = 0{,}3\).

Для файла А определите центр каждого кластера и найдите два числа: \(A_1\) — светимость (цифра из характеристики) звезды, являющейся центром кластера с меньшим числом точек; \(A_2\) — количество звёзд голубого цвета (S) в кластере с бо́льшим числом точек.

Для файла Б определите центр каждого кластера (без учёта трёх «лишних» точек) и найдите два числа: \(B_1\) — максимальная изолированность среди звёзд всех трёх кластеров; \(B_2\) — количество звёзд с цветовым разнообразием не менее 4 в кластере с наименьшим числом точек.

В ответе запишите четыре числа: в первой строке — \(A_1\) и \(A_2\) через пробел; во второй строке — целую часть произведения \(B_1 \times 10\,000\) и \(B_2\) через пробел.

Задание выполняется с использованием прилагаемых файлов.


Фрагмент звёздного неба спроецирован на плоскость с декартовой системой координат. Учёный решил провести кластеризацию полученных точек, являющихся изображениями звёзд, то есть разбить их множество на N непересекающихся непустых подмножеств (кластеров), таких что точки каждого подмножества лежат внутри прямоугольника со сторонами длиной H и W, причём эти прямоугольники между собой не пересекаются. Стороны прямоугольников не обязательно параллельны координатным осям.

Гарантируется, что такое разбиение существует и единственно для заданных размеров прямоугольников.

Для каждой звезды дана характеристика: тип цвета, тип светимости и её размер в соответствии с таблицей.

Обозначение Цвет
G белый
J зелёный
L синий
N оранжевый
Y красный
S голубой
Z жёлтый
Обозначение Размер
I сверхгигант
II яркий гигант
III гигант
IV субгигант
V карлик
VI субкарлик
VII белый карлик

Полученные значения записаны в характеристике слитно: обозначение цвета, светимость (обозначается арабской цифрой от 1 до 9) и размер звезды. Например, G5III — белая звезда, светимость 5, гигант.

Будем называть центром кластера точку этого кластера, сумма расстояний от которой до всех остальных точек кластера минимальна. Для каждого кластера гарантируется единственность его центра. Расстояние между двумя точками на плоскости \(A(x_1, y_1)\) и \(B(x_2, y_2)\) вычисляется по формуле:

\(d(A, B) = \sqrt{(x_2 - x_1)^2 + (y_2 - y_1)^2}\).

В файле А хранятся данные о звёздах двух кластеров, где H=7, W=5 для каждого кластера. В каждой строке записана информация об одной звезде: сначала координата x, затем координата y, затем характеристика звезды. Значения даны в условных единицах. Известно, что количество точек не превышает 1000.

В файле Б хранятся данные о звёздах трёх кластеров, где H=3, W=7 для каждого кластера. Известно, что количество точек не превышает \(10\,000\). Структура хранения информации о звёздах в файле Б аналогична файлу А.

Известно, что в файле Б имеются координаты ровно трёх «лишних» точек, являющихся аномалиями, возникшими в результате помех при передаче данных. Эти три точки не относятся ни к одному из кластеров, их учитывать не нужно.

Гарантируется, что во всех кластерах обоих файлов количество точек различно.

Яркостью кластера будем называть среднее арифметическое числовых значений светимости всех звёзд этого кластера.

Для файла А определите центр каждого кластера и найдите два числа: \(A_1\) — светимость (цифра из характеристики) звезды, являющейся центром кластера с меньшим числом точек; \(A_2\) — количество звёзд размера «карлик» (V) в кластере с бо́льшим числом точек.

Для файла Б определите центр каждого кластера (без учёта трёх «лишних» точек) и найдите два числа: \(B_1\) — количество звёзд-сверхгигантов (размер I) в кластере с максимальной яркостью; \(B_2\) — расстояние между центрами кластеров с максимальной и минимальной яркостью.

В ответе запишите четыре числа: в первой строке — \(A_1\) и \(A_2\) через пробел; во второй строке — \(B_1\) и целую часть произведения \(B_2 \times 10\,000\) через пробел.

Для какого наименьшего целого неотрицательного числа \(A\) выражение

\((y + 2x \ne 740000) \lor (A \gt x) \land (A \gt y)\)

тождественно истинно (т.е. принимает значение 1) при любых целых неотрицательных \(x\) и \(y\)?

📧
Шаг 2: Письма из ниоткуда
Просто
День второй. На почту приёмной комиссии завалилось 347 писем от абитуриентов. Кто-то пишет email в подписи, кто-то в теле письма, кто-то прямо в теме: «Если что, пишите на vasya.gamer@hse.ru, я там всегда онлайн». Твой начальник просит собрать все email в один список, потому что Excel у него снова завис. Печаль.
Условие задачи
 

Email считается валидным, если он состоит из:

  • имени из латинских букв, цифр и точек,
  • символа @,
  • домена из латинских букв, цифр и точек,
  • точки и доменного зона из 2–4 латинских букв (например, .ru, .edu, .com).
Входные данные

Одна строка произвольного текста.

Выходные данные

Все найденные email-адреса, по одному на строке, в порядке появления.

Подсказка: Шаблон: [a-zA-Z0-9.]+@[a-zA-Z0-9.]+\.[a-zA-Z]{2,4}. Не забудь экранировать точку перед доменной зоной: \..

На соревнованиях по прыжкам в длину зафиксированы результаты спортсменов. На вход подаётся число \(N\) — количество спортсменов. Затем вводятся \(N\) целых чисел (каждое с новой строки) — дальность прыжка в сантиметрах.

Программа должна:

  • Собрать все числа в список
  • Отсортировать список по возрастанию
  • Вывести отсортированный список
  • Вывести три наибольших значения (последние 3 элемента отсортированного списка)

Формат входных данных

Первая строка — целое число \(N\) (\(3 \le N \le 20\)).

Следующие \(N\) строк — по одному целому числу (от 100 до 900).

Формат выходных данных

Первая строка — отсортированный список в формате [a, b, c, ...].

Вторая строка — три наибольших значения в формате Топ-3: [x, y, z].

Дана последовательность целых чисел (могут быть отрицательные). Найдите сумму тех элементов, запись абсолютного значения которых в 5-ричной системе оканчивается на 2.

Формат входных данных

В первой строке -- количество чисел N (1 ≤ N ≤ 1000). В следующих N строках -- по одному целому числу (по модулю не более 10000).

Формат выходных данных

Одно число -- сумма. Если подходящих нет -- выведите 0.

Примечание

Число подходит, если |число| mod 5 == 2. Например: |−7| = 7, 7 mod 5 = 2.

Дана последовательность натуральных чисел, оканчивающаяся нулём. Подсчитайте, сколько из них в шестнадцатеричной записи являются трёхзначными и оканчиваются на D.

Формат входных данных

Последовательность натуральных чисел (не более 10000), каждое в отдельной строке, завершается нулём.

Формат выходных данных

Одно число -- количество.

Примечание

Трёхзначное hex-число: от 10016=256 до FFF16=4095. Цифра D16=1310, последняя цифра = остаток от деления на 16.

Фитнес-браслет фиксирует время начала каждой тренировки и её длительность. Вечерней считается тренировка, начавшаяся в 18:00 или позже. Определите суммарную длительность вечерних тренировок.

Формат входных данных

Каждая строка содержит четыре целых числа: часы и минуты начала тренировки, затем часы и минуты её длительности. Последовательность заканчивается строкой «0 0 0 0».

Формат выходных данных

Два числа через пробел — суммарная длительность вечерних тренировок в часах и минутах. Если вечерних тренировок нет — вывести «0 0».

Пусть M — сумма минимального и максимального простых натуральных делителей целого числа (не считая 1 и само число). Если таких делителей нет, M = 0.

Напишите программу, которая перебирает целые числа, меньшие 12 987 654, в порядке убывания и ищет среди них те, для которых M > 80 000 и оканчивается на 4.

В ответе запишите шесть строк: в каждой строке — найденное число и соответствующее значение M через пробел. Строки в порядке убывания найденных чисел.

Например, для числа 20: M = 2 + 5 = 7.

Формат выходных данных

Шесть строк, в каждой — два числа через пробел: найденное число и M.

Будучи фанатом современной архитектуры, Фермер Джон построил новый амбар в форме круга. Внутри амбар составляет кольцо из \(n\) комнат, пронумерованных по часовой стрелке \(1 \ldots n\) по периметру (\(3 \leq n \leq 100,000\)). Каждая комната имеет двери в две соседние комнаты, а также дверь из амбара во внешний мир.

У ФД есть ровно \(n\) коров, и он хочет поместить по одной корове в каждую комнату. Однако своенравные коровы выстроились не как нужно, и возможно несколько коров собрались у одной внешней двери. А именно, \(c_i\) коров стоит перед дверью с номером \(i\). Разумеется, \(\сумма c_i = n\).

Чтобы коровы добрались до своих мест ФД собирается применить следующий подход: каждая корова входит в дверь, перед которой она стоит и идёт по часовой стрелке в свою комнату. В предположении, что проход коровы через \(d\) дверей отнимает у неё \(d^2\) энергии, определите минимальное количество энергии, которое требуется, чтобы распределить коров по одной в комнату.

ФОРМАТ ВВОДА (файл cbarn.in):

Первая строка ввода содержит \(n\). Оставшиеся \(n\) строк содержат \(c_1 \ldots c_n\).

ФОРМАТ ВЫВОДА (файл cbarn.out):

Выведите минимальное количество энергии, потреблённое всеми коровами.

Фермер Джон купил подписку журнала Good Hooveskeeping для своих коров, теперь им есть что почитать. К несчастью, последний номер содержит довольно неподходящую статью, как приготовить совершенный бифштекс. ФД хочет чтобы его коровы не увидели эту статью.

ФД взял текст из журнала и создал строку S длиной не более чем 10^6 символов. Из неё он хочет удалить все вхождения подстроки T длиной <= 100 символов неподходящего содержания. Чтобы сделать это, ФД ищет первое вхождение T в S и удаляет его. Затем он повторяет процесс опять, снова удаляя первое вхождение T, продолжая так до тех пор, пока больше не станет вхождений T в S. Заметим, что удаление одного вхождения может создать другое вхождение, которое не существовало раньше.

Пожалуйста, помогите ФД определить конечное содержание строки S после завершения всех удалений.

Формат входных данных

Первая строка содержит S. Вторая строка будет содержать T. Длина T не более чем длина S, и все символы S и T - маленькие латинские буквы (a..z).

Формат выходных данных

Строка S после завершения всех удалений. Гарантируется, что S не станет пустой после завершения процесса всех удалений.

Возможно Вы слышали об игре "Камень, Бумага, Ножницы". Коровы любят играть в похожую игру "Копыто, Бумага, Ножницы" Правила игры "Копыто, Бумага, Ножницы" просты. Две коровы играют друг против друга. Они обе считают до трёх, а затем одновременно делают жест, представляющий копыто, бумагу или ножницы. Копыто выигрывает у ножниц, ножницы выигрывают у бумаги, бумага выигрывает у копыта. Конечно может быть и ничья, если обе коровы сделали один и тот же жест.

Фермер Джон хочет сыграть с Бесси \(N\) раз (\(1 \leq N \leq 100,000\)). Бесси будучи экспертом в этой игре может предсказать каждый из жестов ФД. Но как корова, она очень ленива. Поэтому она хочет играть одним и тем же жестом переключившись на другой не более одного раза за все игры. Например, она может играть "Копыто" первые \(x\) игр, и затем переключится на "бумагу" на оставшиеся \(N-x\) игр.

По заданной последовательности жестов ФД, определите максимальное количество игр, которое выиграет Бесси.

ФОРМАТ ВВОДА (файл hps.in):

Первая строка ввода содержит число \(N\).

Оставшиеся \(N\) строк содержат жесты ФД, представленные символами H, P, S.

ФОРМАТ ВЫВОДА (файл hps.out):

Выведите максимальное количество игр, которое может выиграть Бесси, если она может переключать жест не более одного раза.

Фермер Джон установил новую доильную машину. Она берёт так много энергии, что в амбаре часто выключается свет. Это случается так часто, что Беси запомнила карту амбара. Это позволяет ей быстрее находить путь к выходу в темноте. Теперь ей интересно узнать насколько дольше её путь в темноте.

Амбар описывается простым (несамопересекающимся) многоугольником с целочисленными вершинами \((x_1, y_1) \ldots (x_n, y_n)\) перечисленными в порядке обхода по часовой стрелке. Его рёбра составляются чередующимися горизонтальными (параллельными оси Х) и вертикальными (параллельными оси Y) отрезками. Первое ребро может быть как горизонтальным, так и вертикальным. Выход расположен в точке \((x_1, y_1)\). Беси начинает в некоторой вершине \((x_i, y_i)\) для \(i > 1\). Она идёт только по периметру амбара, по часовой стрелке или против часовой стрелки, потенциально изменяя направления движения, в любой вершине. Её цель - пройти минимальное расстояние и добраться до выхода. Это довольно просто, когда свет включён - просто выбрать между движением по часовой стрелке и движением против часовой стрелки.

Когда свет выключается, Беси в панике забывает вершину, в которой она находится. К счастью, она помнит точную карту амбара и поэтому она может вычислить свою позицию, двигаясь и опираясь на свои ощущения. Когда она находится в вершине, она может сказать это левый поворот или правый поворот, и является ли вершина выходом. Когда она идёт по ребру амбара, она может определить точную длину ребра после того, как пройдёт всё ребро. В общем сначала Беси двигается, чтобы определить, где она находится, а затем чтобы добраться к выходу за минимальное из оставшихся расстояний.

Помогите Беси определить минимальное количество, на которое возрастёт её путь в худшем случае при движении в темноте, по сравнению с движением при свете, полагая, что она движется оптимально в каждом случае. Оптимальная стратегия - такая, которая минимизирует увеличение расстояния в худшем случае.

ФОРМАТ ВВОДА (файл lightsout.in):

Первая строка ввода содержит \(N\) (\(4 \leq N \leq 200\)). Каждая из последующих \(N\) строк содержит по два целых числа, описывающих точки \((x_i, y_i)\) в почасовом порядке обхода. Все целые числа \(-100,000 \ldots 100,000\).

ФОРМАТ ВЫВОДА (файл lightsout.out):

Минимально возможное для худшего случая увеличение длины оптимального пути при походе в темноте по сравнению с походом при свете.

Fort Moo#90384
Беси строит форт прямоугольной формы.

Она уже выбрала место - кусок земли \(N\) метров по \(M\) метров (\(1 \leq N, M \leq 200\)). К несчастью, на этом месте есть болотистые участки, на которых строительство невозможно. Помогите Беси определить наибольшую (по площади) область, на которой можно построить форт, так , чтобы форт не проходил через болотистые участки.

ФОРМАТ ВВОДА (файл fortmoo.in):

Строка 1 содержит целые числа \(N\) и \(M\).

Следующие \(N\) строк содержат по \(M\) символов, формируя решётку, описывающую выбранное место. Символ '.' представляет траву, а символ 'X' представляет болотистую местность.

ФОРМАТ ВЫВОДА (файл fortmoo.out):

Единственное целое число, представляющее максимальную площадь, которую Беси может покрыть своим фортом.

Фермер Джон разместил свои \(N\) (\(1 \leq N \leq 100,000\)) стогов сена в различных точках одномерной дороги вдоль его фермы. Вам требуется ответить на \(Q\) (\(1 \leq Q \leq 100,000\)) запросов, о том сколько стогов сена находится внутри указанного участка дороги.

ФОРМАТ ВВОДА (файл haybales.in):

Первая строка содержит \(N\) и \(Q\).

Следующая строка содержит \(N\) различных целых чисел, каждое в интервале \(0 \ldots 1,000,000,000\), указывающих местоположения стогов сена.

Каждая из последующих \(Q\) строк содержит два целых числа \(A\) и \(B\) (\(0 \leq A \leq B \leq 1,000,000,000\)) задающих запрос на количество стогов сена между \(A\) и \(B\), включительно.

ФОРМАТ ВЫВОДА (файл haybales.out):

Вы должны вывести \(Q\) строк. Для каждого запроса выведите количество стогов сена в соответствующем интервале.

Moocast#90361
\(N\) (\(1 \leq N \leq 1000\)) коров Фермера Джона хотят организовать безопасную систему для передачи важных сообщений.

Они купили по одной "воки-токи" для каждой коровы. Каждая такая "воки-токи" имеет ограниченный радиус передачи информации. Но коровы могут передавать сообщения "по эстафете", поэтому нет необходимости для каждой коровы иметь возможность передавать сообщения непосредственно любой другой корове.

Коровам нужно решить сколько денег необходимо потратить на "воки-токи". Если они потратят \$X, они получат "воки-токи", способно передавать на расстояние до \(\sqrt{X}\). То есть, квадрат расстояния между коровами стоит не более \(X\) чтобы обеспечить их коммуникацией.

Помогите коровам определить минимальное целое \(X\) такое, что сообщение от любой коровы сможет достичь любой другой коровы.

ФОРМАТ ВВОДА (файл moocast.in):

Первая строка ввода содержит \(N\).

Каждая из \(N\) последующих строк содержит \(x\) и \(y\) координаты одной коровы. И то и другое - целое в интервале \(0 \ldots 25,000\).

ФОРМАТ ВЫВОДА (файл moocast.out):

Напишите в одну строку целое \(X\) - минимальное количество денег, которое коровы должны потратить на "воки-токи"

Беси и её подружки играют в супергероев. Все знают, что каждый супергерой имеет сигнал, призывающий его к действию. Беси нарисовала специальный сигнал на листке бумаги размером \(M \times N\) (\(1 \leq M \leq 10, 1 \leq N \leq 10\)), но он получился очень маленький. Беси хочет его увеличить ровно в K (\(1 \leq K \leq 10\)) раз в каждом направлении.

Этот сигнал состоит только из символов '.' и 'X'.

ФОРМАТ ВВОДА (файл cowsignal.in):

Первая строка ввода содержит \(M\), \(N\), \(K\), разделённые одиночными пробелами.

Каждая из следующих \(M\) строк содержит строку символов длиной \(N\). Все вместе они и описывают сигнал.

ФОРРМАТ ВВОДА (файл cowsignal.out):

Вы должны вывести \(KM\) строк, каждая с \(KN\) символами, представляющими картинку увеличенного сигнала.

Поделиться
Класснуть