编程题
### 问题描述
在坐标平面上有 $n$ 个点,第 $i$ 个点为 $(i, y_i)$,其中 $1 \leq i \leq n$。
小怂想要对它们连线,他想知道是否可能画出两条平行且不重叠的直线,使得这些点都位于两条直线上,而且它们中的每一条至少通过其中的一个点。
### 输入格式
第一行一个正整数 $n$,表示点的个数。
第二行有 $n$ 个以空格分隔的整数 $y_1, y_2, \dots, y_n$,每个点的纵坐标。
### 输出格式
输出一行,如果满足要求则输出 `YES`,否则输出 `NO`。
### 样例输入
```plaintext
5
7 5 8 6 9
```
### 样例输出
```plaintext
YES
```
### 样例解释
有五个点:$(1, 7)$,$(2, 5)$,$(3, 8)$,$(4, 6)$,$(5, 9)$。可以画一条穿过点 $1, 3, 5$,另一条穿过点 $2, 4$。
### 评测数据规模
数据保证:$3 \leq n \leq 10^5$,$-10^9 \leq y_i \leq 10^9$。