printНеклассифицированные

printСтрелок

Ограничения: время – 4s/8s, память – 32MiB Ввод: input.txt или стандартный ввод Вывод: output.txt или стандартный вывод copy
Послать решение Blockly Посылки Темы Где Обсудить (0)

Стрелку нужно поразить `N` мишеней, но у него остался всего один патрон. Требуется определить, может ли он найти такую точку (не обязательно с целыми координатами) и направление выстрела, что пуля, выпущенная из этой точки в этом направлении, пролетит через все мишени.
В первой строке входного файла находится целое число `N` (`1\ ≤\ N\ ≤\ 100`) – количество мишеней. В следующих `N` строках записаны по 4 целых числа `x_{i_1}`, `y_{i_1}`, `x_{i_2}`, `y_{i_2}` – начало и конец `i`-й мишени (мишени представлены как непересекающиеся отрезки на плоскости), `-10000\ ≤\ x_{i_1},\ y_{i_1},\ x_{i_2},\ y_{i_2}\ ≤\ 10000`.
Выходной файл содержит одну строку, в которой написано слово "YES", если решение есть, и "NO" – если нет.

Пример ввода

3
2 0 2 4
4 1 6 5
6 3 9 0

Пример вывода

YES
Источник: VII межвузовская олимпиада по программированию Вологда, 2004
loading