Задачи заочного тура личного первенства 1999
1. Прыг-скок
Ограничения: время – 250ms/500ms, память – 32MiB Ввод: input.txt или стандартный ввод Вывод: output.txt или стандартный вывод
Послать решение Blockly Посылки Темы Где Обсудить (0)
Игра "Прыг-скок" ведется на доске-полоске из `N` клеток. У
каждого игрока по одной фишке. В начале игры фишка первого игрока
находится на левом краю доски (на 1-й клетке), а фишка второго игрока – на
правом краю (на `N`-й клетке). Игроки ходят по
очереди. Фишка первого игрока делает "прыжки" по `M` клеток, а
фишка второго игрока – "скачки" по `K` клеток. Фишка может прыгать как
влево, так и вправо. Перепрыгивать через фишку противника или вставать
на занятую клетку запрещено. Если игрок
не может сделать прыжок (скачок) своей фишкой, то он проигрывает.
Кто выигрывает при безошибочной игре противников?
Во входном файле в первой строке содержатся три целых числа
`N` (`2\ ≤\ N\ ≤\ 30`), `M` (`1\ ≤\ M\ ≤\ N/2`) и `K` (`1\ ≤\ K\ ≤\ N/2`)
через один пробел.
В выходной файл вывести число 1, если выигрывает первый игрок, или 2,
если выигрывает второй игрок, или 0, если ни один
из игроков не имеет выигрывающей стратегии.
2. Составление палиндрома
Ограничения: время – 500ms/1000ms, память – 32MiB Ввод: input.txt или стандартный ввод Вывод: output.txt или стандартный вывод
Послать решение Blockly Посылки Темы Где Обсудить (0)
Дан набор слов, составить палиндром (перевертыш, предложение,
которое одинаково читается слева-направо и справа-налево) из всех
указанных слов.
Во входном файле содержится от 1 до 15 слов длиной до 15 букв,
каждое слово на отдельной строке, каждая строка оканчивается символом
перехода на новую строку, пробелы отсутствуют; слова отсортированы по
алфавиту, используются только прописные русские буквы, буква Ё не используется.
Из слов, указанных во входном файле, всегда можно составить палиндром.
В выходной файл вывести на одной строке составленный палиндром,
разделяя слова ровно одним пробелом. Если возможно составить несколько
палиндромов, вывести один (любой) из них.
Пример ввода
А
АЗОРА
ЛАПУ
НА
РОЗА
УПАЛА
Вывод для примера
А РОЗА УПАЛА НА ЛАПУ АЗОРА
3. Числа-палиндромы
Ограничения: время – 250ms/500ms, память – 32MiB Ввод: input.txt или стандартный ввод Вывод: output.txt или стандартный вывод
Послать решение Blockly Посылки Темы Где Обсудить (0)
Возьмем произвольное число большее или равное 1. Если это
число не является числом-палиндромом (которое одинаково читается
слева-направо и справа-налево, например 27372), то запишем его наоборот,
а затем сложим его с первоначальным числом.
После нескольких таких шагов для большинства чисел-затравок мы
получаем число-палиндром. Например, для числа 78: 78+87=165,
165+561=726, 726+627=1353, 1353+3531=4884.
Для некоторых чисел, наименьшее среди которых 196, даже
после очень большого числа шагов (более ста тысяч) палиндром
не получается.
Во входном файле содержится несколько (не более 100) чисел
в диапазоне от 1 до 99999, по одному числу в строке. Признаком
конца набора чисел является число 0.
В выходной файл для каждого числа из входного файла вывести
на отдельной строке или само число, если оно уже является числом-палиндромом,
или число-палиндром, которое получается из
указанного за сто или меньшее число шагов, или число 0, если
число-палиндром не может быть получено за сто или меньшее число шагов.
Для числа 0, являющегося признаком окончания набора
чисел, в выходной файл ничего не выводится.
Пример ввода
27372
196
78
1999
0
Вывод для примера
27372
0
4884
712217