Автор: | Антон Карабанов | Ограничение времени: | 1 сек | |
Входной файл: | Стандартный вход | Ограничение памяти: | 64 Мб | |
Выходной файл: | Стандартный выход | |||
Максимальный балл: | 100 |
В финале крупнейшего спортивного турнира "Хрустальная ракетка" на главном корте встретились два лучших теннисиста современности. Тысячи зрителей стали свидетелями яркого противостояния, красивых розыгрышей, блистательных подач, умопомрачительных сэйвов, отчаянных прыжков и ... энергетического коллапса, выразившегося в отключении света. Когда яркие прожекторы вновь зажглись, выяснилось, что все компьютерные данные о ходе матча не сохранились. Хорошо, что резервный судья отмечал на листочке кто из соперников какой гейм выиграл. Помогите организаторам и восстановите счет на главном табло теннисного корта!
Теннисный матч состоит из сетов, сет состоит из геймов, каждый сет начинается со счета 0-0. Сет завершается победой игрока, первым выигравшим 6 геймов, при этом у соперника должно быть выиграно не более 4 геймов, в противном случае сет продолжается до того момента, пока кто-то из игроков не выиграет седьмой гейм. Другими словами, сет может завершиться со счетом 6-0, 6-1, 6-2, 6-3, 6-4, 7-5 и 7-6 в пользу одного из игроков. Игра заканчивается, когда один из игроков выиграет три сета.
Единственная строка входного файла содержит непустую строку s, состоящую из символов 1 и 2. Символ 1 соответствует событию "гейм выиграл первый игрок", символ 2 соответствует событию "гейм выиграл второй игрок". Гарантируется, что запись соответствует одной игре (возможно, ещё не завершившейся).
Выведите в первой строке счет в матче по сетам. В каждой из следующих строк выведите счет в каждом из сетов. Числа разделяйте символом "-". Если игра еще не завершилась, а следующий сет еще не начался, выведите счет в этом сете "0-0".
Баллы за каждый тест начисляются независимо.
№ | Стандартный вход | Стандартный выход |
---|---|---|
1 |
|
|
2 |
|
|
Автор: | Антон Карабанов | Ограничение времени: | 1 сек | |
Входной файл: | Стандартный вход | Ограничение памяти: | 64 Мб | |
Выходной файл: | Стандартный выход | |||
Максимальный балл: | 100 |
Генералиссимус Флатландских вооруженных сил проводил совещание со своим заместителем. Основным вопросом обсуждения стало состояние непобедимой танковой армады наиболее вероятного противника - Берляндии. Перед вами отрывок из стенограммы заседания.
- Итак, коллеги, резюмируем. Мы не знаем, сколько танков у Берляндии. Даже примерно. Наш разведчик сообщил, что ему удалось тайком сфотографировать один из танков с бортовым номером, давайте думать, какую информацию мы сможем из этого извлечь.
- Шеф, нам известна система нумерации танков берляндских вооруженных сил. Бортовой номер состоит из трех частей. Первое число - порядковый номер танкового батальона, второе число - порядковый номер роты в батальоне и третье число - порядковый номер танка в роте. Все числа могут иметь ведущие нули. Например, если в роте 150 танков, третье число на борту будет написано так: (001, 002, ..., 010, ..., 100, ..., 150). Лишних ведущих нулей они не пишут, поэтому, если, например, третье число на танке 04, значит в каждой роте не меньше десяти, и не более 99 танков.
- Значит, если номер танка 12-3-04, то у противника от 12 до 99 батальонов, в каждом из них от 3 до 9 рот (нам ведь точно известно, что Берляндцы зациклены на порядке, и у них всё в армии одинаковое), а в каждой роте от 10 до 99 танков. Где мой калькулятор? Получается, что по этому номеру мы определим, что в Берляндии от 360 до 88209 танков.
Бесшумно появившейся адъютант положил перед Генералиссимусом запечатанный конверт и так же тихо удалился.
- Вот и долгожданная фотография! Посмотрим...
Очень долгая пауза.
- Шеф, у нас две проблемы. Первая - берляндцы не используют разделители в бортовых номерах. Действительно - зачем им это? Они и так знают, сколько у них батальонов, рот и танков в каждой роте. Вторая - судя по длине номера, танков у них очень много.
- Что верно, то верно... Передайте номер нашему программисту, пусть найдет наименьшее возможное количество танков хитрых берляндцев!
Единственная строка входного файла содержит натуральное число n - бортовой номер танка. Гарантируется наличие в номере не менее трех цифр, отличных от нуля.
Выведите одно натуральное число - минимальное достоверное количество танков в Берляндии.
111 ≤ n ≤ 1015
Баллы за каждый тест начисляются независимо.
В первом примере n = 123. Разделители можно расставить единственным образом: 1-2-3. В Берляндии не менее одного батальона, не менее двух рот в каждом батальоне, не менее трех танков в каждой роте. Итого у противника не менее 6 танков.
Во втором примере n = 1024. Есть три возможности расставить два разделителя.
Первая: 10-2-4. В Берляндии не менее десяти батальонов, не менее двух рот в каждом, не менее четырёх танков в каждой. Итого у противника не менее 80 танков.
Вторая: 1-02-4. В Берляндии не менее одного батальона, не менее десяти рот в каждом, не менее четырёх танков в каждой. Итого у противника не менее 40 танков.
Третья расстановка 1-0-24 невозможна - нумерация в армии Берляндии начинается с 1, поэтому рота не может иметь номер 0 (а также 00, 000 и так далее). В итоге можно с уверенностью утверждать, что независимо от расстановки разделителей, хотя бы 40 танков у противника точно имеется.
№ | Стандартный вход | Стандартный выход |
---|---|---|
1 |
|
|
2 |
|
|
Автор: | Антон Карабанов | Ограничение времени: | 1 сек | |
Входной файл: | Стандартный вход | Ограничение памяти: | 64 Мб | |
Выходной файл: | Стандартный выход | |||
Максимальный балл: | 100 |
Команда игроков участвует в соревновании "Форт Боярд". После долгой борьбы за ключи и подсказки, тяжелых конкурсов и загадок старца Фура, побегов из тюрьмы и совета Теней, участники игры добрались до Сокровищницы. Теперь они должны разгадать кодовое слово и обозначить составляющие его буквы при помощи пушечных ядер на алфавитном полу Сокровищницы. Если предложенный вариант окажется правильным, игроки получают доступ к золотым монетам, и могут попытаться вынести наружу как можно большее их количество.
Капитан команды считает, что загаданное организаторами кодовое слово - s. Помогите ему определить количество способов расставить ядра на полу сокровищницы для проверки.
Первая строка входного файла содержит одно английское слово s, записанное строчными буквами. Вторая строка содержит два натуральных числа, записанных через пробел: n и m - количество строк и столбцов на алфавитном полу. В следующих n строках записано по m строчных английских букв - описание пола.
Выведите одно неотрицательное целое число - ответ на задачу. Гарантируется, что ответ не превысит 1018.
1 ≤ n, m ≤ 20
1 ≤ len(s) ≤ 50
Баллы за каждый тест начисляются независимо.
В примере участники могут выбрать одно из двух положений ядра для символа 'u' и одно из двух положений для символа 'e'. Остальные символы можно выбрать единственным образом.
№ | Стандартный вход | Стандартный выход |
---|---|---|
1 |
|
|
Автор: | Антон Карабанов | Ограничение времени: | 1 сек | |
Входной файл: | Стандартный вход | Ограничение памяти: | 64 Мб | |
Выходной файл: | Стандартный выход | |||
Максимальный балл: | 100 |
В магазин завезли n единиц товара. Каждая единица товара характеризуется двумя параметрами: сортом и свежестью. В очередь за этим товаром выстроились n покупателей. Каждый покупатель имеет предпочтение либо в сорте, либо в свежести, и выбирает наилучший товар с этим параметром из оставшихся. Определите, кому какая единица товара будет продана.
Первая строка входного файла содержит натуральное число n - количество единиц товара и покупателей. Во второй строке задана строка длиной n, состоящая из символов '0' и '1'. Символ '0' соответствует событию "покупатель предпочтёт товар с самым высоким сортом", символ '1' соответствует событию "покупатель предпочтёт товар самой высокой свежести". В следующих n строках через пробел расположены два целых числа xi, yi - значения сорта и свежести товара с номером i. Гарантируется, что нет двух единиц товаров с одинаковым сортом. Гарантируется, что нет двух единиц товаров с одинаковой свежестью.
Выведите через пробел перестановку n чисел - порядок, в котором будут продан весь товар.
1 ≤ n ≤ 105
1 ≤ xi, yi ≤ 109
Баллы за каждый тест начисляются независимо.
Решения, верно работающие в случае, когда все покупатели выбирают товар с наивысшим сортом, получат не менее 20 баллов.
Решения, верно работающие при 1 ≤ n ≤ 103, получат не менее 60 баллов.
В примере первый покупатель предпочитает самый высокий сорт и выберет товар под номером 3 (у него самый высокий сорт - 14). Второй покупатель тоже предпочитает самый высокий сорт и выберет товар под номером 1 (у него самый высокий сорт из оставшихся - 12). Третий покупатель предпочитает свежесть и выберет товар под номером 2 со свежестью 36. Четвертый покупатель заберет четвертый товар с сортом 8, пятый - оставшийся пятый товар с сортом 1.
№ | Стандартный вход | Стандартный выход |
---|---|---|
1 |
|
|
Автор: | Антон Карабанов | Ограничение времени: | 1 сек | |
Входной файл: | Стандартный вход | Ограничение памяти: | 64 Мб | |
Выходной файл: | Стандартный выход | |||
Максимальный балл: | 100 |
В каждый из n дней в одно и то же время в акваторию морского порта прибывает новое судно с товаром, который нужно разгрузить. Этот процесс занимает двое суток для каждого корабля, после чего судно отправляется дальше. Одновременно разгружаться может только одно судно и прерывать этот процесс нельзя. Среди товаров встречаются скоропортящиеся, которые нужно разгрузить как можно раньше, поэтому как только очередное судно покидает порт, под разгрузку встаёт корабль с самым скоропортящимся товаром. Определите для каждого корабля номер дня, в который он покинет порт.
Первая строка входного файла содержит натуральное число n - количество кораблей, нуждающихся в разгрузке. Во второй строке через пробел указана срочность разгрузки судна ai, прибывшего в акваторию порта в день номер i - чем она выше, тем раньше следует разгрузить корабль. Гарантируется, что все числа во второй строке различны.
Выведите через пробел n натуральных чисел bi - номера дней, в который i-й корабль покинет порт.
1 ≤ n ≤ 50000
1 ≤ ai ≤ 109
Баллы за каждый тест начисляются независимо.
Решения, верно работающие при 1 ≤ n ≤ 1000, получат не менее 60 баллов.
События в примере будут развиваться следующим образом:
В первый день прибывает первое судно и сразу встает под разгрузку.
Во второй день прибывает второе судно и ждет очереди на разгрузку. Продолжается разгрузка первого судна.
В третий день прибывает третье судно. Завершается разгрузка первого судна. Оно покидает порт в день номер 3. Из двух кораблей, ожидающих разгрузки, более высокий приоритет у того, которое прибыло только что и оно встаёт под разгрузку.
В четвёртый день прибывает последнее судно. Продолжается разгрузка судна номер 3.
В пятый день его разгрузка завершается и судно номер 3 покидает порт. Из двух кораблей, ожидающих разгрузки, более высокий приоритет у того, которое прибыло во второй день - оно встаёт под разгрузку.
В шестой день продолжается разгрузка второго судна.
В седьмой день завершается разгрузка второго судна. Оно покидает порт в день номер 7. Под разгрузку встаёт последнее судно, которое покинет порт в день номер 9.
№ | Стандартный вход | Стандартный выход |
---|---|---|
1 |
|
|
Автор: | Антон Карабанов | Ограничение времени: | 1 сек | |
Входной файл: | Стандартный вход | Ограничение памяти: | 64 Мб | |
Выходной файл: | Стандартный выход | |||
Максимальный балл: | 100 |
У Тани - свадебный переполох! Выбор платья, фаты, цветов, ресторана, музыки - всему нужно успеть уделить время! Времени мало, а дел много.
Сегодня невеста выбирает свадебный торт. Конечно, он должен быть красивым, вкусным и, самое главное, - многоэтажным. Согласно представлениям Тани об идеальном торте, на вершине должен располагаться корж радиуса 1, под ним - корж радиуса a или b, под ним (и каждым следующим) - корж радиусом в a или b раз больше предыдущего. Например, при a = 2 и b = 3 идеальный торт может быть таким: 1-2-6-12-24-... Или таким: 1-3-6-18-36-... Или таким: 1-3-9-27-81-...
Максимальный радиус нижнего коржа торта не может превышать r - в противном случае его невозможно будет вынести из кондитерского цеха. Помогите Тане - посчитайте по известным a, b и r количество идеальных тортов. Естественно, высота каждого такого отдельного торта должна быть максимально возможной, при этом высоты двух различных идеальных тортов могут отличаться. Два торта считаются различными, если перечисление их радиусов не совпадает хотя бы в одной позиции.
Первая строка входного файла содержит три натуральных числа, записанных через пробел: a, b и r.
Выведите одно натуральное число - ответ на задачу. Гарантируется, что он не превысит 1015.
2 ≤ a < b < r ≤ 1018
Баллы за каждый тест начисляются независимо.
В примере Таня посчитает идеальными следующие пять тортов:
1-2-4-8.
1-2-4-12.
1-2-6-12.
1-3-6-12.
1-3-9.
№ | Стандартный вход | Стандартный выход |
---|---|---|
1 |
|
|
Автор: | Антон Карабанов | Ограничение времени: | 1 сек | |
Входной файл: | Стандартный вход | Ограничение памяти: | 64 Мб | |
Выходной файл: | Стандартный выход | |||
Максимальный балл: | 100 |
Я загадал вам загадку - отвечайте, да или нет!
В единственной строке записано одно слово s из строчных английских букв.
Выведете 'Yes' или 'No' (без кавычек).
1 ≤ len(s) ≤ 20.
Баллы за задачу начисляются только в случае, если все тесты успешно пройдены.
№ | Стандартный вход | Стандартный выход |
---|---|---|
1 |
|
|
2 |
|
|