编程题
### 问题描述
在一个整数数组 $nums$ 中,如果任意三个不同的下标 $i,j,k$, 都满足 $nums[i] + nums[j] + nums[k] = nums[l]$(其中 $l$ 可以是数组中的任意一个下标,包括 $i,j,k$),那么称数组 $nums$ 为神秘数组。
现在小橙子获得了一个数组 $a$,他想知道数组 $a$ 是否是一个神秘数组,但是他的智商难以解决这个问题,你可以帮助他判断吗?
如果数组 $a$ 是一个神秘数组,输出 `YES`, 否则输出 `NO`。
### 输入格式
第一行一个整数 $n$,表示数组 $a$ 的长度。
第二行 $n$ 个整数 $a_1,a_2,a_3 \cdots,a_n$,表示数组 $a$。
数据范围保证:$3 \leq n \leq 200,000$,$-10^9 \leq a_i \leq 10^9$。
### 输出格式
如果 $a$ 是神秘数组,输出 `YES`,否则输出 `NO`。
### 样例输入
```text
4
7 0 0 -7
```
### 样例输出
```text
YES
```
### 样例说明
在样例中,任意三个不同下标之和都在数组中出现了,所以输出 `YES`。
$a_1 + a_2 + a_3 = 7 + 0 + 0 = 7 = a_1$
$a_1 + a_2 + a_4 = 7 + 0 + (-7) = 0 = a_2$