Codeforces Round 431 (Div. 2) |
---|
Закончено |
Соедини бесчисленное количество точек линиями и достигни далёкого мира.
На плоскости находится n точек, i-я из которых находится в точке с координатами (i, yi).
Определите, возможно ли провести две параллельные и не совпадающие прямые такие, что каждая точка лежит на ровно одной из прямых, а каждая из прямых проходит через хотя бы одну точку.
Первая строка содержит целое число n (3 ≤ n ≤ 1 000) — количество точек.
Вторая строка содержит n целых чисел y1, y2, ..., yn ( - 109 ≤ yi ≤ 109) — вертикальные координаты точек.
Выведите «Yes» (без кавычек), если можно удовлетворить всем ограничениям, и «No» иначе.
Вы можете выводить каждую из букв в любом регистре (заглавную или строчную).
5
7 5 8 6 9
Yes
5
-1 -2 0 0 -5
No
5
5 4 3 2 1
No
5
1000000000 0 0 0 0
Yes
В первом примере есть пять точек: (1, 7), (2, 5), (3, 8), (4, 6) и (5, 9). Возможно провести прямую, проходящую через точки 1, 3, 5, и параллельную ей вторую, проходящую через точки 2, 4.
Во втором примере, несмотря на то, что можно провести две прямых, покрывающие все точки, их нельзя сделать параллельными.
В третьем примере невозможно выполнить оба условия одновременно.
Название |
---|