Олимпиадный тренинг

Задача . D. Пара прямых


Задача

Темы: геометрия *2000

Задано n точек на плоскости, все точки имеют целочисленные координаты. Все точки различны.

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

Входные данные

В первой строке задано одно целое число n (1 ≤ n ≤ 105) — количество точек на плоскости.

Далее в n строках заданы по два целых числа xi и yi (|xi|, |yi| ≤ 109)— координаты i-й точки. Все n точек различны.

Выходные данные

Если возможно провести две прямые так, что каждая точка лежит хотя бы на одной из них, то выведите YES, иначе NO.

Примечание

В первом примере можно провести две прямые так, что первая проходит через точки под номерами 1, 3 и 5, а вторая — через две оставшиеся точки.


Примеры
Входные данныеВыходные данные
1 5
0 0
0 1
1 1
1 -1
2 2
YES
2 5
0 0
1 0
2 1
1 1
2 3
NO

time 2000 ms
memory 256 Mb
Правила оформления программ и список ошибок при автоматической проверке задач

Статистика успешных решений по компиляторам
 Кол-во
С++ Mingw-w644
Комментарий учителя