Темы
    Информатика(2656 задач)
---> 21 задач <---
Страница: << 1 2 3 4 5 >> Отображать по:
ограничение по времени на тест
2.0 second;
ограничение по памяти на тест
256 megabytes

Гарри Поттер и Тот-Кого-Нельзя-Называть снова сошлись в смертельном поединке. На этот раз они стоят в противоположных концах коридора длины l метров и одновременно пускают в противника свои смертельные заклинания. Известно, что магический импульс заклинания Гарри распространялся со скоростью p метров в секунду, а магический импульс заклинания Сами-Знаете-Кого — со скоростью q метров в секунду.

Импульсы движутся по коридору навстречу друг другу, и в момент столкновения разворачиваются и летят обратно к тем, кто их выпустил, не меняя своих изначальных скоростей. Затем, каждый из волшебников отражает вернувшийся импульс и тот снова летит в сторону врага, опять же не меняя своей скорости.

Так как Гарри отлично освоил основы магии, то он знает, что после второго столкновения импульсы исчезнут, а в месте их встречи произойдёт сильный взрыв. Но вот с математикой у юного волшебника проблемы, поэтому он просит вас вычислить расстояние от его позиции до места второй встречи импульсов заклинаний, при условии, что противники стоят на месте в течение всего боя.

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

В первой строке ввода записано единственное целое число l ( 1 ≤ l ≤ 1 000 ) — длина коридора, в котором происходит поединок.

Во второй строке находится целое число p , в третьей целое число q ( 1 ≤ p , q ≤ 500 ) — скорости магических импульсов Гарри Поттера и Того-Кого-Нельзя-Называть соответственно.

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

Выведите единственное число — расстояние от конца коридора, в котором стоит Гарри, до места второй встречи импульсов заклинаний. Ваш ответ будет считаться правильным, если его абсолютная или относительная ошибка не будет превосходить 10 - 4 .

А именно: пусть ваш ответ равен a , а ответ жюри — b . Проверяющая программа будет считать ваш ответ правильным, если .

Примечание

В первом тесте из условия скорости импульсов равны, поэтому обе их встречи произойдут ровно посередине между Гарри и Тем-Кого-Нельзя-Называть.

ограничение по времени на тест
5.0 second;
ограничение по памяти на тест
512 megabytes

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

Так как дороги всегда обходятся недёшево, правительства государств новообразованного союза попросили вас помочь им оценить затраты. Для этого вам была выдана карта, которая представляет собой клетчатый прямоугольник из n строк по m клеток в каждой. Любая клетка карты либо принадлежит одному из трёх государств, либо является областью, на которой можно построить дорогу, либо является областью, на которой дорогу построить нельзя. Проходимыми являются все клетки, принадлежащие государствам, а также все клетки, в которых построены дороги. Из любой проходимой клетки можно перемещаться вверх, вниз, вправо и влево, если соответствующая такому перемещению клетка существует и является проходимой.

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

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

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

В первой строке ввода записаны размеры карты n и m ( 1 ≤ n , m ≤ 1000 ) — количество строк и столбцов соответственно.

Следующие n строк содержат по m символов каждая и описывают строки карты. Цифры от 1 до 3 означают принадлежность соответствующему государству. Символ ' . ' соответствует клетке, на которой можно построить дорогу, а символ ' # ' соответствует клетке, на которой дорогу построить нельзя.

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

Выведите единственное целое число — минимальное количество клеток, в которых необходимо построить дороги, чтобы соединить все клетки всех государств. Если это сделать невозможно, то выведите -1 .

Примеры
Входные данные
4 5
11..2
#..22
#.323
.#333
Выходные данные
2
Входные данные
1 5
1#2#3
Выходные данные
-1
ограничение по времени на тест
2.0 second;
ограничение по памяти на тест
256 megabytes

На планете Бублик идёт война. Каждый из городов планеты принадлежит одному из нескольких враждующих государств. На планете есть n городов, расположенных вокруг дырки от Бублика и пронумерованных числами от 1 до n в порядке их обхода по кругу. Расстояние между любыми двумя соседними по кругу городами (в том числе между городом номер n и городом номер 1 ) одно и то же, а именно 42 бубликанских километра.

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

Вам дана политическая карта планеты Бублик. Требуется найти два города, принадлежащих одному государству, расстояние между которыми максимально.

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

В первой строке содержится единственное число n ( 2 ≤ n ≤ 200 000 ) — количество городов.

Во второй строке содержатся n чисел, i -е из которых — номер государства, владеющего i -м городом. Номера всех государств — целые числа от 1 до 10 9 включительно.

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

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

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

Примечание

В первом примере первый и четвёртый города принадлежат государству 1 , а расстояние между ними составляет 126 бубликанских километров, тогда как расстояния между городами 3 и 5 и городами 2 и 6 составляют 84 бубликанских километра.

Во втором примере расстояние между вторым и шестым городом равно 126 бубликанских километров.

Примеры
Входные данные
7
1 2 3 1 3 10 2
Выходные данные
1 4
Входные данные
7
30 40 10 40 10 40 20
Выходные данные
2 6
ограничение по времени на тест
2.0 second;
ограничение по памяти на тест
256 megabytes

На прошлый новый год друзья подарили Мише клетчатое поле из n строк и m столбцов, в каждой клетке которого записано некоторое целое число c i , j , где i определяет номер строки, а j — номер столбца. Строки пронумерованы сверху вниз, а столбцы — слева направо. Строки и столбцы занумерованы целыми числами, начиная с единицы.

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

Задача была бы практически невыполнима, если бы Миша не прочитал прилагавшуюся к клетчатому полю инструкцию. В ней было сказано, что на самом деле число c i , j равняется a i & b j , где a и b — две последовательности чисел, любезно указанных в инструкции, а операция & означает побитовое умножение или побитовое «И» (определение операции смотрите в разделе «Замечание»).

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

В первой строке ввода записаны числа n , m и k ( 1 ≤ n , m , k ≤ 200 000 ) — размеры клетчатого поля и количество областей, названных Машей, соответственно. Во второй строке содержатся n чисел a i ( 0 ≤ a i ≤ 1 000 000 ) — элементы первой последовательности. В третьей строке содержатся m чисел b i ( 0 ≤ b i ≤ 1 000 000 ) — элементы второй последовательности.

Следующие k строк описывают варианты, предложенные Машей, каждая из них содержит 4 числа u i , l i , d i , r i ( 1 ≤ u i d i n , 1 ≤ l i r i m ) — координаты левой верхней и правой нижней клетки соответствующей области.

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

Выведите k строк, i -я строка должна содержать крутизну i -й области.

Примечание

Рассмотрим записи чисел x и y в двоичной системе исчисления (возможно, с ведущими нулями) x = x k ... x 1 x 0 и y = y k ... y 1 y 0 . Тогда z = x & y определяется как z = z k ... z 1 z 0 , где z i = 1 , если x i = 1 и y i = 1 , иначе z i = 0 . Иными словами, единицы в побитовом «И» чисел находятся в тех разрядах, в которых у обоих чисел находятся единицы.

Примеры
Входные данные
3 3 3
4 0 3
1 2 1
1 1 3 3
1 1 1 3
1 2 3 2
Выходные данные
4
0
2
Входные данные
1 2 2
7
1 12
1 1 1 2
1 1 1 1
Выходные данные
5
1
ограничение по времени на тест
2.0 second;
ограничение по памяти на тест
256 megabytes

В сверхсекретную военную часть под командованием полковника Зуева скоро приедет комиссия из министерства обороны. Согласно уставу, в каждой сверхсекретной военной части должна быть сверхсекретная рота, которая должна заниматься... а чем именно — не скажем, на то она и сверхсекретная. Проблема заключается в том, что в части Зуева такой роты почему-то нет.

Полковник решил разобраться с этой проблемой незамедлительно и приказал построить на плацу в одну шеренгу всех n солдат вверенной ему части. Известно, что болтливость i -го слева солдата равна q i . Зуев хочет, чтобы сверхсекретная рота состояла из k первых солдат шеренги, а их суммарная болтливость была как можно меньше (чтобы рота оставалсь сверхсекретной). Для этого он собирается не более s раз поменять местами двух соседних солдат. Заметим, что любой солдат может участовать в таком обмене позициями сколько угодно раз. Задача оказалась нетривиальной, и полковник Зуев обратился к вам за помощью. Определите, какую минимальную суммарную болтливость первых k солдат шеренги можно достичь, если провести не более s операций обмена соседних солдат.

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

В первой строке входных данных записаны три целых положительных числа n , k , s ( 1 ≤ k n ≤ 150 , 1 ≤ s ≤ 10 9 ) — количество построенных в шеренгу солдат, предполагаемый размер сверхсекретной роты и максимальное возможное количество операций обмена соседних солдат соответственно.

Во второй строке входных данных записано n целых чисел q i ( 1 ≤ q i ≤ 10 6 ) — значения болтливости солдат в порядке следования солдат в шеренге.

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

Выведите единственное целое число — минимальную возможную суммарную болтливость сверхсекретной роты.

Примечание

В первом примере полковнику достаточно поменять местами второго и третьего солдата и не использовать второй обмен. Итоговое положение солдат: ( 2 , 1 , 4 ). Минимальная возможная суммарная болтливость сверхсекретной роты равна 3 .

Во втором примере полковник будет производить обмены в следующей последовательности :

  1. (10, 1, 6 ftrightarrow 2 , 5)
  2. (10, 1, 2, 6 ftrightarrow 5 )

Итоговое положение солдат (10, 1, 2, 5, 6).

Минимальная суммарная болтливость роты равна 18 .

Примеры
Входные данные
3 2 2
2 4 1
Выходные данные
3
Входные данные
5 4 2
10 1 6 2 5
Выходные данные
18
Входные данные
5 2 3
3 1 4 2 5
Выходные данные
3

Страница: << 1 2 3 4 5 >> Отображать по:
Выбрано
:
Отменить
|
Добавить в контест