Третий квалификационный раунд
"A" Экзамен | |||||
---|---|---|---|---|---|
Ограничение по времени | 2 секунды | ||||
Ограничение по памяти | 256 мегабайт | ||||
Игорь — хороший программист, но большой разгильдяй. Проиграв весь семестр в компьютерные игры и просмотрев очень много сериалов и фильмов, он неожиданно понял, что пришло время сессии, которую надо закрывать, чтобы не вылететь из университета. Первым экзаменом у Игоря будет экзамен по экстремальному программированию. Суть экзамена заключается в том, что в некоторое время S появляется условие задачи, которую должен решить Игорь до момента времени F. Экзамен длится не менее секунды и не более суток. Если Игорь сдает задачу за отведённое время, то он сдает экзамен. Если он не успеет сдать ее в течение часа после конца экзамена, то он заваливает экзамен. Иначе помимо решения задачи приходится писать тестирование. Игорь знает за сколько минут напишет программу и теперь хочет узнать, сможет ли он сдать экзамен, либо ему придётся писать тест, либо он вообще экзамен не сдаст. | |||||
Формат входных данных |
Первая строка входных данных содержит единственное целое число n (1 ≤ n ≤ 104) — количество тестов. Следующие n строк содержат S и F в формате hh:mm:ss, а также целое число k (1 ≤ k ≤ 2000) — время начала и конца экзамена и время в минутах, за которое Игорь напишет программу. Гарантируется, что время в тестах задано корректно. |
||||
Формат выходных данных |
Для каждого теста в отдельной строке выведите ответ на задачу. Если Игорь сдаст экзамен, то выведите Perfect. Если Игорю придётся писать тест, то выведите Test. Иначе выведите Fail. |
||||
Примеры |
|
"B" Сообщение | |||||
---|---|---|---|---|---|
Ограничение по времени | 2 секунды | ||||
Ограничение по памяти | 256 мегабайт | ||||
После многих лет безуспешных попыток ученые наконец-то смогли установить связь с разумной цивилизацией в космосе и выяснили, что алфавит инопланетян состоит всего из двух букв: a и b. Для приема сообщений был сконструирован специальный приемник, который выдает символы a, b, а также специальный символ ?, если разобрать, какой символ был передан, не удалось. Анализ показал, что инопланетяне передают все свои сообщения в виде двух одинаковых записанных подряд строк. Например, строки «abab» или «aaaaaa» могут быть сообщениями инопланетян, а «abba» или «aaa» — нет. Прибор, сконструированный учеными, получив на вход потенциальное сообщение инопланетян, выдает все возможные способы прочитать строку без учета описанного выше свойства. Например, получив строку «ab??» прибор выдает строки «abaa», «abab», «abba» и «abbb», из них на самом деле только строка «abab» может быть сообщением от инопланетян, а остальные три не могут. Для улучшения качества прибора ученые хотят узнать, сколько строк из тех, которые выведены прибором, не могут быть сообщением инопланетян. Помогите им это сделать. | |||||
Формат входных данных |
В первой строке содержится натуральное число n — число слов в сообщении, полученного учеными. В каждой из следующих n строк содержится слово из сообщения, состоящее из символов a, b и ?. Гарантируется, что все слова имеет четную длину, а также, что в каждом слове есть хотя бы один ?. Суммарная длина всех слов не превышает 200000. Не гарантируется, что есть хотя бы один способ расшифровать каждое слово как сообщение инопланетян. |
||||
Формат выходных данных |
Выведите n строк. В i-ой строке выведите число способов заменить ? на буквы a, b так, чтобы i-е слово не было корректным сообщением инопланетян. Так как число способов может быть очень большим, необходимо выводить его по модулю 109+7. |
||||
Примеры |
|
"C" Матч века | |||||
---|---|---|---|---|---|
Ограничение по времени | 2 секунды | ||||
Ограничение по памяти | 256 мегабайт | ||||
Каждый год студенты Межгалактического Физкультурно-Теологического Института проводят «матч века» по космическому футболу. Этот матч длится одни световые сутки, и в нем принимают участие игроки сборных всех факультетов института. Перед тем, как начать матч, судье необходимо разделить всех игроков на две команды и присвоить им номера. Всего в матче участвуют 2n игроков, из которых n случайно выбранных игроков судья отправляет в первую команду, а n оставшихся — во вторую. После этого судья присваивает номера всем игрокам обеих команд. Игроки обеих команд получают номера, каждый из которых является целым числом от 1 до n. Номера всех игроков одной команды попарно различны. Традиционно, в первой команде игроки получают номера в порядке убывания их роста, а во второй — в порядке возрастания. Студенты, видевшие много матчей века, любят высчитывать «зрелищность» каждого матча — сумму попарных разниц роста между игроками разных команд, имеющих одинаковые номера. Так, если в первой команде играют игроки с ростом 180 и 190 сантиметров, а во второй — игроки с ростом 170 и 205 сантиметров, то зрелищность этого матча равна |180 - 205| + |190 - 170| = 45. Теперь им интересно вычислить математическое ожидание зрелищности «матча века», зная рост всех его участников. Помогите им. | |||||
Формат входных данных |
В первой строке входных данных содержится натуральное число t — количество матчей века, которые необходимо изучить. Далее следуют описания самих матчей. Описание каждого матча состоит из двух строк. Первая строка содержит одно четное натуральное число 2n — количество участников очередного «матча века». Следующая строка содержит 2n попарно различных натуральных чисел, не превышающих 106 — рост всех участников. Суммарное количество участников во всех матчах, которые необходимо изучить, не превышает 106. |
||||
Формат выходных данных |
Для каждого матча в отдельной строке выведите одно вещественное число — искомое математическое ожидание. Ваш ответ должен отличаться от правильного не более, чем на 10-6. |
||||
Примеры |
|
"D" Разбиение на массивы | |||||||
---|---|---|---|---|---|---|---|
Ограничение по времени | 2 секунды | ||||||
Ограничение по памяти | 256 мегабайт | ||||||
Рассмотрим множество целых чисел от 1 до 3n. Необходимо распределить эти числа в три массива a, b и c длиной n так, чтобы для любого i от 1 до n выполнялось следующее: ai + bi = ci | |||||||
Формат входных данных |
Единственная строка содержит целое число n (1 ≤ n ≤ 23). |
||||||
Формат выходных данных |
Если решения не существует, то в первой строке выведите единственное число −1. В ином случае, выведите 3 строки, в каждой по n целых чисел, разделенных пробелами. В первой строке должны находиться элементы массива a, во второй — элементы массива b, в третьей — массива c. Каждое число от 1 до 3n должно быть выведено ровно один раз. |
||||||
Примеры |
|
"E" Лесной феномен | |||||
---|---|---|---|---|---|
Ограничение по времени | 2 секунды | ||||
Ограничение по памяти | 256 мегабайт | ||||
Байтландия очень зеленая и экологичная страна с множеством лесов, рек и озер. Все леса в Байтландии имеют форму идеального прямоугольника. Длины сторон i-го леса равны ni и mi километрам. Каждый лес разделен линиями, параллельными сторонам прямоугольника, на квадраты с длиной стороны равной одному километру. В каждом квадрате живет свой лесник. Как известно, осенью каждый лесник заготавливает себе дрова на зиму. Но этой осенью произошло что-то невообразимое. По неизвестной никому причине, после заготовки дров каждый лесник бесплатно отгрузил весь свой запас древесины случайному, равновероятно выбранному соседу. Все лесники отгружали дрова одновременно. Два лесника называются соседями, если квадраты леса, в которых они живут, имеют общую сторону. С целью более детального изучения этого феномена человеческого поведения для каждого леса вам необходимо подсчитать математическое ожидание количества лесников, у которых после этой процедуры оказались хотя бы какие-нибудь дрова на зиму. | |||||
Формат входных данных |
В первой строке содержится натуральное число t — количество лесов в Байтландии. В каждой из следующих t строк содержатся по два числа ni и mi — длины сторон i-го леса. (1 ≤ ni ≤ 107, 1 ≤ mi ≤ 107 nm ≥ 2). Количество лесов в Байтландии не превышает 10000. |
||||
Формат выходных данных |
Для каждого леса в отдельной строке выведите искомое математическое ожидание в виде несократимой дроби. Числитель и знаменатель должны быть разделены символом / без дополнительных пробелов. Если знаменатель равен единице, то надо вывести только числитель. |
||||
Примеры |
|