Задача A. Сбалансированное дерево revisited

Автор:A. Klenin   Ограничение времени:5 сек
Входной файл:input.txt   Ограничение памяти:256 Мб
Выходной файл:output.txt  
Максимальный балл:100  

Условие

Дана последовательность целых чисел. Каждое прочитанное число обрабатывается следующим образом:

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

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

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

Выходной файл должен содержать последовательность чисел, отсортированных по возрастанию.

Ограничения

Количество чисел находится в диапазоне от 0 до 106, сами числа — в диапазоне от  − 231 до 231 − 1.

Примеры тестов

Входной файл (input.txt) Выходной файл (output.txt)
1
3 2 1 3 0
1 2 3
2
5 -1 6 -5 5 0
5 6

Задача B. Уравнение для 5 класса

Автор:А. Кленин   Ограничение времени:2 сек
Входной файл:input.txt   Ограничение памяти:256 Мб
Выходной файл:output.txt  
Максимальный балл:100  

Условие

Уравнение для пятиклассников представляет собой строку длиной 5 символов. Второй символ строки является либо знаком '+' (плюс) либо '-' (минус), четвёртый символ — знак '=' (равно). Из первого, третьего и пятого символов ровно два являются цифрами из диапазона от 0 до 9, и один — буквой x, обозначающей неизвестное.

Требуется решить данное уравнение относительно x.

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

Входной файл содержит единственную строку — уравнение.

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

В выходной файл следует вывести единственное целое число — значение x.

Примеры тестов

Входной файл (input.txt) Выходной файл (output.txt)
1
x+5=7
2
2
3-x=9
-6

Задача C. Ближайшее число - 1

Автор:А. Кленин   Ограничение времени:2 сек
Входной файл:input.txt   Ограничение памяти:200 Мб
Выходной файл:output.txt  
Максимальный балл:100  

Условие

Дан массив A, состоящий из N неотрицательных целых чисел.

Назовём правым (левым) соседом нулевого элемента ближайший к нему справа (слева) ненулевой элемент.

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

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

Входной файл содержит число N, за которым следует N целых чисел — элементы массива A.

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

Выходной файл должен содержать N целых чисел — элементы массива B.

Ограничения

1 ≤ N ≤ 10000, 0 ≤ Ai ≤ 10000

Примеры тестов

Входной файл (input.txt) Выходной файл (output.txt)
1
5
0 0 1 0 2
1 1 1 0 2
2
4
8 0 0 6
8 8 6 6

Задача D. Подсчёт слов

Автор:unknown   Ограничение времени:5 сек
Входной файл:input.txt   Ограничение памяти:200 Мб
Выходной файл:output.txt  
Максимальный балл:4  

Условие

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

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

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

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

В выходном файле должно содержаться единственное число - количество слов.

Ограничения

Длина строки должна быть от 1 до 200 символов.

Примеры тестов

Входной файл (input.txt) Выходной файл (output.txt)
1
This       is  a  test	
4
2
Qqqqqqqqqq
1

Задача E. Потерявшиеся

Автор:А. Кленин, М. Рожков   Ограничение времени:2 сек
Входной файл:input.txt   Ограничение памяти:4 Мб
Выходной файл:output.txt  
Максимальный балл:100  

Условие

Лабиринт размером N x N клеток состоит из стенок, обозначенных символом '#' (ASCII 35), и проходов, обозначенных символом '.' (ASCII 46). В различных клетках лабиринта находятся два путешественника, потерявшие друг друга. Каждый из них полагает, что сможет найти товарища, если будет двигаться по лабиринту в соответствии со своим планом. Первый путешественник на каждую секунду делает шаг вперёд на одну клетку, если это возможно, либо поворачивает направо, если впереди стена. Второй путешественник действует аналогично, но поворачивает налево.

Требуется определить, встретятся ли когда-нибудь путешественники, и, если да, то после скольки шагов. Первоначальные позиции путешественников заданы координатами (x, y) и направлением d — числом 1, 2, 3, 4 для севера, востока, юга и запада соответственно. Позиция (1, 1) находится в северо-западном углу лабиринта.

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

Первая строка содержит значения N x1 y1 d1 x2 y2 d2. Следующие N строк содержат по N символов каждая — описание лабиринта.

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

Выходной файл должен содержать единственное число — количество шагов до встречи, либо число −1, если встреча не состоится.

Ограничения

2 ≤ N ≤ 10, 1 ≤ x1, y1, x2, y2N.

Примеры тестов

Входной файл (input.txt) Выходной файл (output.txt)
1
2 1 1 1 2 1 1
..
.#
2
2
3 1 2 4 3 2 3
.#.
.#.
.#.
-1

Задача F. Подстановочный шифр

Автор:unknown   Ограничение времени:5 сек
Входной файл:input.txt   Ограничение памяти:200 Мб
Выходной файл:output.txt  
Максимальный балл:1  

Условие

Шифрование строки подстановочным шифром производится путём замены каждого символа алфавита на другой символ. Разумеется, для однозначного шифрования и дешифрования необходимо, чтобы каждому символу исходного алфавита соответствовал ровно один символ зашифрованного, и наоборот. Например, при помощи шифра M->A, A->R, Y->K слово MAYA будет зашифровано в ARKR.
Даны две строки одинаковой длины, состоящие из заглавных латинских букв. Требуется найти подстановочный шифр, при помощи которого первая строка шифруется во вторую, или определить, что такого не существует. Например, для слов "GOOD" и "WELL" шифра не существует, потому что с одной стороны, буква "O" преобразуется одновременно в "E" и "L", а с другой стороны, буквы "O" и "D" обе превращаются в "L".

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

Входной файл содержит две строки.

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

Выходной файл должен содержать последовательность пар символов, обозначающих замену при шифровании первого символа пары на второй. Пары должны быть расположены по одной в строке и отсортированы по алфавиту. В случае, если шифра не существует, следует вывести в выходной файл строку "--" (два знака минус).

Ограничения

Длина каждой строки должна не более 50 символов.

Примеры тестов

Входной файл (input.txt) Выходной файл (output.txt)
1
MAYAS
ARKRS
AR
MA
SS
YK
2
TRAINING
TAADFTFK
--

Задача G. Путешествие из Петербурга в Москву

Автор:Т. Кормен, Ч. Лейзерсон, Р. Ривест, Т. Чистяков   Ограничение времени:5 сек
Входной файл:input.txt   Ограничение памяти:200 Мб
Выходной файл:output.txt  
Максимальный балл:100  

Условие

Профессор едет по шоссе из Петербурга в Москву, имея при себе карту с указанием всех N стоящих на шоссе бензоколонок и расстояний Di до них от Петербурга. Известно расстояние S, которое может проехать машина с полностью заправленным баком.
Требуется выяснить, на каких бензоколонках нужно заправляться, чтобы количество заправок было минимально. В начале пути бак полон.
Расстояние от Петербурга до Москвы равно L.

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

Во входном файле сначала указаны числа L, S, N, после чего перечислено N чисел Di.

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

Выходной файл должен содержать единственное число - минимальное количество заправок. Если добраться из Петербурга в Москву невозможно, следует вывести число -1.

Ограничения

0 <= L <= 10^9

0 <= S <= 10^9

0 <= N <= 500000

0 <= Di <= L

Все числа целые.

Примеры тестов

Входной файл (input.txt) Выходной файл (output.txt)
1
100 60 2
50 30
1
2
100 30 3
60 20 50 
-1

Задача H. Максимальный перепад

Автор:И. Туфанов, И. Олейников   Ограничение времени:2 сек
Входной файл:input.txt   Ограничение памяти:16 Мб
Выходной файл:output.txt  
Максимальный балл:100  

Условие

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

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

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

Входной файл содержит число N, за которым следуют N2 целых чисел — описание карты региона.

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

Выходной файл должен содержать единственное целое число — максимальный перепад высот в этом регионе.

Ограничения

1 ≤ N ≤ 100. Все высоты — целые числа от 0 до 231−1

Примеры тестов

Входной файл (input.txt) Выходной файл (output.txt)
1
3
1 1 1
1 2 1
1 2 3
2

Задача I. Время в пути

Автор:А. Кленин   Ограничение времени:1 сек
Входной файл:input.txt   Ограничение памяти:64 Мб
Выходной файл:output.txt  
Максимальный балл:100  

Условие

Время отправления и время прибытия поезда задаются в виде Ч М, где Ч - час от 0 до 23, М - минута от 0 до 59. Время в пути задаётся аналогично в формате Ч М, где Ч - количество часов от 0 до 999, а М - количество минут от 0 до 59.

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

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

В первой строке входного файла содержится время отправления, во второй — время в пути.

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

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

Примеры тестов

Входной файл (input.txt) Выходной файл (output.txt)
1
18 25
7 37
2 2

Задача J. Забор в парке

Автор:И. Лудов, А. Кленин   Ограничение времени:2 сек
Входной файл:input.txt   Ограничение памяти:200 Мб
Выходной файл:output.txt  
Максимальный балл:100  

Условие

В бесконечном квадратном парке деревья образуют квадратную решётку с шагом 1 метр. Часть парка было решено оградить забором, который представляет собой многоугольник с заданными координатами вершин. Деревья, которые в точности попадают на вершины или стороны многоугольника, придётся срубить. Необходимо выяснить количество таких деревьев.

Программа должна, получив на входе число вершин многоугольника N и их целочисленные координаты (x1, y1), …, (xN, yN), определить количество точек с целочисленными координатами, лежащих на границе этого многоугольника.

Стороны многоугольника не самопересекаются.

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

Входной файл содержит число N, за которым следует N пар координат x1 y1xN yN

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

Выходной файл должен содержать единственное число — количество точек.

Ограничения

3 ≤ N ≤ 1000, 0 ≤ xi, yi ≤ 107, исходные данные таковы, что результат не превосходит 231−1.

Примеры тестов

Входной файл (input.txt) Выходной файл (output.txt)
1
3
0 0 2 0 0 2
6

0.634s 0.013s 31