Задача №1 “Расписание полетов” (1 тур)
Условие
Самолёты некоторой авиакомпании летают исключительно по прямой с постоянной скоростью и на одной и той же высоте (этапы набора высоты и снижения не учитываются). Если в некоторый момент времени два самолета оказываются на расстоянии, меньшем или равном, чем минимальное безопасное расстояние , то возникает аварийная ситуация.
Рейс самолёта задаётся как отрезок на карте координатами точек взлета (x1, y1) и посадки (x2, y2), а также временем взлёта t1 и посадки t2, выраженным в секундах. При этом точки взлёта и посадки не совпадают, а t2 > t1.
Задание
Требуется по заданному описанию нескольких рейсов найти момент времени tA, когда возникает первая аварийная ситуация или установить, что аварийных ситуаций не будет.
Найденное время следует округлить вниз до ближайшего целого числа секунд.
Форматы входного и выходного файлов
В первой строке входного файла INPUT.TXT заданы количество рейсов N (1  N  10000) и величина . В следующих N строках заданы рейсы в формате: xi1 yi1 xi2 yi2 ti1 ti2.
Все исходные данные, кроме N — целые числа в диапазоне от 0 до 1000000.
В выходной файл OUTPUT.TXT нужно вывести момент времени tA, когда возникает первая аварийная ситуация, либо число –1, если карта полетов безопасна.
Примеры
INPUT.TXT	OUTPUT.TXT	
2 0
500 0 500 1000 5 15
0 500 1000 500 5 15	10	
2 0
500 0 500 1000 5 15
0 500 1000 500 6 16	-1	
2 10
10 10 100 100 1 10
85 85 200 200 9 50	9	
Разбалловка
Решение для случая, когда все рейсы представлены отрезками, лежащими на одной прямой	10	баллов	
Решение для общего случая	40	баллов	
Интерфейс + работа с файлами	5	баллов	
ИТОГО	55	баллов	

Задача №2 “Новобранцы” (1 тур) 
Условие
На первом построении новобранцы встали в шеренгу. Командир объяснил им правила выполнения в строю различных команд и подал команду “налево”.
В результате исполнения этой команды некоторые солдаты повернулись налево, а некоторые — направо. Солдаты, которые оказались лицом к лицу со своим соседом, сразу поняли, что совершили ошибку. Чтобы её исправить, каждый из них опять быстро повернулся на 180 градусов. Если аналогичная ситуация затем опять повторялась, то есть, в каких-то парах солдаты оказывались лицом друг к другу, то такие солдаты снова поворачивались на 180 градусов. Эта процедура продолжалась, пока в шеренге была хотя бы одна пара солдат, стоящих лицом друг к другу.
Задание
Требуется по заданному расположению солдат сразу после команды “налево” вычислить число пар солдат, совершивших развороты на 180 градусов в соответствии с вышеописанной процедурой.
Форматы входного и выходного файлов
Входной файл INPUT.TXT состоит из N (1  N  30000) символов ‘<’ и ‘>’, обозначающих соответственно солдата, повернувшегося налево или направо.
Выходной файл OUTPUT.TXT должен содержать единственное целое число — количество развернувшихся пар.
Примеры
INPUT.TXT	OUTPUT.TXT	
>><<><	7	
<<>>>	0	
Разбалловка
Решение для N  100	10	баллов	
Решение для 100 < N  30000	30	баллов	
Интерфейс + работа с файлами	5	баллов	
ИТОГО	45	баллов	
Задача №3 “Восстановление ломаной” (2 тур) 
Условие
На листке бумаги размером N  N клеток нарисована замкнутая M-звенная ломаная с вершинами в узлах клеток. После рисования возведённые в квадрат длины звеньев ломаной были выписаны в порядке обхода.
Задание
Требуется восстановить координаты вершин ломаной или определить, что это невозможно.
Форматы входного и выходного файлов
Входной файл INPUT.TXT состоит из двух строк. В первой строке содержатся два целых числа — размер бумаги N (1  N  15) и количество звеньев ломаной M (3  M  20). Вторая строка содержит последовательность из M целых чисел — длин звеньев, возведенных в квадрат.
Выходной файл OUTPUT.TXT должен состоять из M строк, содержащих по два целых числа — координаты X и Y вершин ломаной (0  X, Y  N). Порядок записи координат вершин должен соответствовать порядку перечисления квадратов длин звеньев во входном файле.
В случае наличия нескольких решений следует вывести любое из них. Если решения не существует, то в выходной файл требуется вывести единственное число –1.
Примеры
INPUT.TXT	OUTPUT.TXT	
8 4
13 29 37 5	0 1
3 3
8 1
2 0	
8 4
1 1 1 2	-1	
Разбалловка
Решение для M = 3	10	баллов	
Решение для 4  M  50	40	баллов	
Интерфейс + работа с файлами	5	баллов	
ИТОГО	55	баллов	
Задача №4 “Сессия-1” (2 тур)
Условие
Студенту первого курса необходимо в течение одного месяца (30 дней) сдать сессию, состоящую из экзаменов по N предметам. В день студент способен сдать не более одного экзамена. Для каждого предмета известны дни возможной сдачи.
Задание
Требуется составить расписание сессии для данного студента, позволяющее ему сдать всю сессию как можно раньше в предположении, что все экзамены будут сданы с первой попытки. Т. е. среди всех решений следует выбрать то, у которого самый поздний день сдачи экзаменов минимален. Если таких решений несколько, следует выдать любое из них.
Форматы входного и выходного файлов
В первой строке входного файла INPUT.TXT содержится число предметов N (1  N  15). В следующих N строках заданы расписания возможной сдачи 1, 2-го, … N-го предметов в виде последовательностей номеров дней месяца, заканчивающейся нулём.
Выходной файл OUTPUT.TXT должен состоять из одной строки, содержащей N целых чисел — номеров дней, в которые следует идти сдавать 1, 2, … N-й предмет. Если решения не существует, то в выходной файл требуется вывести единственное число –1.
Примеры
INPUT.TXT	OUTPUT.TXT	
3
5 0
5 7 0
7 8 3 0	5 7 3	
4
1 0
1 2 0
2 3 0
3 0	-1	
Разбалловка
Решение для случая отсутствия расписания	10	баллов	
Решение для случая наличия расписания	30	баллов	
Интерфейс + работа с файлами	5	баллов	
ИТОГО	45	баллов