Задача A. Площадь пирога

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

Условие

Раз на раз не приходится. И теперь пирог получился в форме невыпуклого многоугольника с N вершинами. Пытаться разрезать его на треугольники, теперь, кажется, совсем бесполезно. Поэтому хозяйка решила поделить его, руководствуясь иными, ничуть не менее очевидными соображениями. А именно — пусть всем достанутся куски одинаковой площади. Однако теперь, чтобы претворить ее план в жизнь нужно посчитать площадь всего пирога. Напишите такую программу.

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

Первая строка входного файла содержит число N — количество вершин многоугольника.

Вторая строка содержит N пар разделенных пробелами действительных чисел xi yi — координаты вершин многоугольника в порядке обхода по или против часовой стрелки.

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

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

Ограничения

3 ≤ N ≤ 500

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

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

Задача B. Бармаглот под одеялом

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

Условие

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

Одеяло и Бармаглот имеют форму ломаных, заданных целочисленными координатами вершин (x1, y1), (x2, y2), … (xN, yN) для одеяла, (u1, v1), (u2, v2), … (uM, vM) для Бармаглота. При этом xi + 1 > xi и ui + 1 > ui для всех i.

Чтобы спрятаться под одеялом, Бармаглот должен полностью под него поместиться, т.е. описывающая его ломаная должна целиком находиться ниже ломаной, описывающей одеяло. Касания ломаных разрешены.

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

Во входном файле расположены числа
N x1 y1 x1 y1 … xN yN
M u1 v1 u1 v1 … uM vM

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

Выходной файл должен содержать единственную строку CRY, если Бармаглот может поместиться под одеялом или SLEEP, если не может.

Ограничения

3 ≤ M, N ≤ 100, 0 ≤ xi, yi, ui, vi ≤ 10000, x1 = u1, xN = uM.

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

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

Задача C. Из истории колеса

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

Условие

Неандертальцы племени Ухыых делают каменные топоры из больших камней, которые приходится тащить с вершины ближайшей горы. Неандерталец Аыыых сделал важное открытие — если камень правильно обтесать, он может скатиться с горы сам. Лучше всего камни скатываются, если придать им (в сечении) форму круга. Однако сделать это каменным топором затруднительно.

Коллеги Аыыыха из Неандертальского института математики предложили обтёсывать камни в форме правильных многоугольников. Чем меньше углов у многоугольника, тем меньше усилий придётся затратить.

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

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

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

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

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

Ограничения

1 ≤ α ≤ 89

N ≥ 3

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

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

Задача D. Почти квадрат

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

Условие

"Дети, нарисуйте в тетрадях квадрат" — сказала учительница. Вася поставил на листе бумаги четыре точки, соединил их с помощью линейки. Получился квадрат... ну, или во всяком случае какой-то четырёхугольник.

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

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

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

Входной файл содержит вещественные числа x1 y1 x2 y2 x3 y3 x4 y4 — координаты вершин четырёхугольника, перечисленные в порядке обхода.

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

Выходной файл должен содержать числа M x y, где целое M — номер вершины, которую следует перенести (1 ≤ M ≤ 4), а вещественные (x, y) — её новые координаты, c абсолютной ошибкой не более 10 − 3. Если решения не существует, вывести единственное число 0 (ноль). Если существует несколько решений, вывести решение с наименьшим значением M.

Ограничения

 − 1000 ≤ x, y ≤ 1000

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

Входной файл (input.txt) Выходной файл (output.txt)
1
0.0 0.0  10.0 0.0  10.0 10.0  0.0 10.0
1 0.0 0.0
2
0.0 0.0  9.5 0.0  10.0 10.0  0.0 10.0
2 10.0 0.0
3
0.0 0.0  9.5 0.0  10.0 10.0  -0.1 10.0
0

Задача E. Сухой фотограф

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

Условие

В некотором городе имеется достопримечательность - прямоугольная площадь размером X на Y метров, на которой работают N фонтанов. Турист желает посетить эту площадь и сделать несколько фотографий. Однако если при фотографировании находиться от какого-либо из фонтанов на расстоянии меньше R метров, фотоаппарат может быть поврежден брызгами воды. Помогите фотографу найти безопасную точку съёмки. Требуется по координатам фонтанов определить точку на площади, удалённую от каждого из них не менее чем на R метров, или определить, что такой точки не существует. Если таких точек более одной, вывести любую из них. Обратите внимание, что стоять в точности на границе окружности или прямоугольника разрешено.

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

В первой строке входного файла содержатся числа X Y N R, в каждой из следующих N строк - координаты xi yi i-го фонтана. Числа X Y R во входном файле — вещественные.

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

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

Ограничения

1 <= N <= 100, 1 <= X, Y, R <= 106.

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

Входной файл (input.txt) Выходной файл (output.txt)
1
100 100 4 50
0 0
100 0
0 100
100 100
50 50

Задача F. Столкновение шариков

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

Условие

По горизонтальной плоской поверхности катятся два шарика радиуса R метров каждый. В начальный момент времени шарики имеют координаты центров (x1, y1) и (x2, y2) метров, а также проекции скоростей на координатные оси (dx1, dy1) и (dx2, dy2) метров в секунду соответственно.

Требуется найти время в секундах, спустя которое шарики столкнутся, или определить, что этого не произойдёт.

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

Входной файл содержит вещественные числа R x1 y1 dx1 dy1 x2 y2 dx2 dy2.

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

Выходной файл должен содержать вещественное число — время до столкновения, с точностью не менее 3 значащих цифр, либо  − 1, если столкновения не произойдёт.

Ограничения

1 ≤ R ≤ 1000,  − 1000 ≤ x1, y1, dx1, dy1, x2, y2, dx2, dy2 ≤ 1000,
(x1 − x2)2 + (y1 − y2)2 > 4R2

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

Входной файл (input.txt) Выходной файл (output.txt)
1
1
0 0 10 0
50 0 -10 0
2.4

Задача G. Манипулятор

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

Условие

В квадрате с длиной стороны 400 находится некоторый предмет, расположение которого задано координатами. В центре верхней стороны квадрата (в точке с координатами (200,0)) прикреплен манипулятор, состоящий из двух последовательно соединенных звеньев, каждое из которых может вращаться относительно своего основания. На конце манипулятора имеется захват. Требуется по заданным координатам предмета и длинам звеньев манипулятора найти положение звеньев, необходимое для захвата предмета или определить, что такого положения не существует.

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

Во входном файле расположены целые числа x y a b, разделенные пробелами. Числа x и y — координаты предмета, a и b — длины соответственно первого и второго звена манипулятора.

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

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

Ограничения

0 < x, y, a, b < 400

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

Входной файл (input.txt) Выходной файл (output.txt)
1
390 220 220 190
200.00 220.00

Задача H. Прямоугольник и луч

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

Условие

Прямоугольник со сторонами, параллельными осям координат, задан координатами двух противоположных вершин (x1, y1) и (x2, y2). Луч, выходящий из начала координат, задан углом α, который он образует с положительным направлением оси абсцисс.

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

Рекомендуется рассмотреть частичные решения:

  1. α  = 0
  2. α кратен 90°.

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

Входной файл содержит вещественные числа x1 y1 x2 y2α. Угол отсчитывается против часовой стрелки и измеряется в градусах.

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

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

Ограничения

Все координаты не превосходят по модулю 105. Угол находится в диапазоне от 0 до 360°.

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

Входной файл (input.txt) Выходной файл (output.txt)
1
0.0 0.0 50.0 50.0 45.0
1250.0
2
-20.0 -50.0 -10.0 -40.0 78.0
0.0

Задача I. Лестница и прямая

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

Условие

Бесконечная лестница на плоскости задана ломаной, состоящей из чередующихся горизонтальных отрезков длиной H и вертикальных отрезков длиной V. Точка (0, 0) является левой вершиной одного из горизонтальных и верхней вершиной одного из вертикальных отрезков.

Прямая на плоскости задана координатами двух различных точек на ней (x1, y1) и (x2, y2).

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

Рекомендуется рассмотреть частичные решения

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

Входной файл содержит целые числа H V x1 y1 x2 y2.

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

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

Ограничения

1 ≤ H, V ≤ 109;  − 109 ≤ x1, y1, x2, y2 ≤ 109

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

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

0.327s 0.009s 33