Задача А. ОСОБЕННЫЕ ДАТЫ

Входной файл: input.txt

Выходной файл: output.txt

Ограничение по времени: 2 сек.


Петя Васечкин родился 7 февраля 1984 года (7.2.1984). Он считает эту дату «особенной», так как она записывается цифрами без повторений. Ближайшая предыдущая «особенная» дата – 6.2.1984. Ближайшая следующая особенная дата – «2.3.1984». Петя желает для произвольной даты от 10 до 90 веков н.э. знать ближайшую предыдущую и следующую «особенные» даты.

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

Формат входного файла:

Входной файл содержит одну строку, с датой от 10 до 90 веков. Число месяца записывается без ведущего нуля. Затем через точку записывается номер месяца, без ведущего нуля. Затем через точку записываются обязательно четыре цифры года.

Формат выходного файла:

Выходной файл содержит две строки: в первой – ближайшая предыдущая «особенная» дата. Во второй – ближайшая следующая «особенная» дата. Запись года обязательно должна содержать четыре цифры. Номера дня и месяца записываются без ведущих нулей.

Пример входных и выходных данных:

input.txtoutput.txt
7.2.19846.2.1984
2.3.1984

Задача В. ЛИНГВИСТИЧЕСКАЯ ЗАДАЧА

Входной файл: input.txt

Выходной файл: output.txt

Ограничение времени: 2 сек.


Однажды Петя Васечкин нашёл англо-зульский и зульско-английский словарь. Читая его, Петя легко установил правила, по которым некоторые заимствованные из английского языка слова записываются на языке «Зулу». Эти правила однозначно представляет следующий фрагмент словаря:

Зульское слово

Русский перевод

Английское слово

bade

плохой

bad

bomube

бомба

bomb

pikiniki

пикник

picnic

pulezidenti

президент

president

palagilafu

параграф

paragraph

siginali

сигнал

signal

tilansivali

Трансваль

transval

pulani

план

plan

asipilini

аспирин

aspirin

apendikisi

приложение

apendix

palafini

парафин

parafin

balikoni

балкон

balcony

kikile

цикл

cycle

Помогите Пете написать программу, которая по заданному английскому слову, удовлетворяющему представленным правилам, строит его зульский эквивалент.

Формат входного файла:

В первой строке входного файла input.txt указано натуральное N, не превосходящее 100, - количество исходных слов. В следующих N строках задаются подходящие для заимствования английские слова. Слова задаются по одному в строке и записаны строчными буквами латинского алфавита.

Формат выходного файла:

В каждой строке выходного файла output.txt должна содержаться зульская запись соответствующего английского слова из входного файла.

Пример входных и выходных данных:

input.txtoutput.txt
3
bad
bomb
picnic
bade
bomube
pikiniki

Задача С. БОЛЬШЕ - МЕНЬШЕ

Входной файл: input.txt

Выходной файл: output.txt

Ограничение по времени: 2 сек.


Задаётся строка, состоящая не более чем из 80 символов < и > в произвольном порядке.

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

Формат входного файла:

В первой строке входного файла указывается натуральное число N, задающее количество строк со знаками неравенств. В N следующих строках задаются строки знаков. Длина одной строки не превосходит 80 символов.

Формат выходного файла:

В каждой строке выходного файла должна располагаться соответствующая преобразованная строка входного файла.

Пример входных и выходных данных:

input.txtoutput.txt
2
><
<>
2>1<2
1<2>1

Задача D. ПАУКИ И МУХА

Входной файл: input.txt

Выходной файл: output.txt

Ограничение по времени: 2 сек.


Муха ползёт по квадратной проволочной сетке размером N*N (1N<100). Её путь начинается из левого нижнего угла (узел 0, 0). Муха может ползти вверх, вниз, влево или вправо, меняя направление в узлах сетки, но не покидая её.

Четыре паука сидят по краям сетки (слева, снизу, справа и сверху) и каждый из них записывает, сколько клеток проползла муха, прежде чем повернуться спиной к пауку (при смене направления движения муха поворачивается спиной к одному из пауков), или пока муха не остановилась в некоторой точке. После этого пауки встречаются и по полученным данным вычисляют путь мухи.

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

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

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

В первой строке входного файла задаётся N длина стороны сетки. Во второй строке – количество чисел в записи первого паука. В третьей – числа, записанные первым пауком, разделенные одним пробелом. В четвёртой строке – количество чисел в записи второго паука. В пятой – числа, записанные вторым пауком, разделенные одним пробелом. В шестой строке – количество чисел в записи третьего паука. В седьмой – числа, записанные третьим пауком, разделенные одним пробелом. В восьмой строке – количество чисел в записи четвертого паука. В девятой – числа, записанные четвёртым пауком, разделенные одним пробелом.

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

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

Пример входных данных:

1

1

1

2

0 1

1

2

1

2

Пример выходных данных:

0 0

1 0

1 1

Задача E. ЧИСЛА ПО ДИАГОНАЛЯМ

Входной файл: input.txt

Выходной файл: output.txt

Ограничение по времени: 2 сек.


Задана квадратная матрица NxN (1N100), заполненная случайными цифрами. Из матрицы читаются числа вдоль главной диагонали в направлении от левого верхнего угла и вдоль побочной диагонали в направлении от левого нижнего угла. Например, для матрицы 3х3 будут прочитаны числа: 3, 26, 59, 48, 7, 0, 42, 753, 86, 9.

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

Формат входного файла:

В первой строке входного файла указывается натуральное число N (1N100) – размер матрицы.

В N следующих строках располагаются случайные цифры по N в строке. Цифры в строке разделяются одним пробелом.

Формат выходного файла:

В единственной строке выходного файла выводится наименьшее повторяющееся число или «No» при отсутствии таковых.

Пример 1 входных данных:

2

1 2

3 4

Пример 1 выходных данных:

No

Пример 2 входных данных:

2

3 2

3 2

Пример 2 выходных данных:

2

Задача F. 0,1 - ЧИСЛО

Входной файл: input.txt

Выходной файл: output.txt

Ограничение времени: 2 сек.


Задано натуральное число 1N1010.

Требуется написать программу, находящую минимальное положительное Х, большее или равное N, которое состоит только из 0 и 1 и делится на 3.

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

Входной файл содержит одно натуральное число N.

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

В выходной файл выводится одно число – минимальное положительное, большее или равное N, и состоящее только из 0 и 1 и делящееся на 3.

Пример входного файла:

3

Пример выходного файла:

111