小火龙有一个非负整数数组$a_1$,$a_2$,$\cdots$,$a_n$。首先,他选择一个任意整数 $x$,然后将 $x$ 添加到数组的某些元素(同一个元素添加不超过一次),从其他某些元素中减去 $x$(同一个元素减去不超过一次),可以有其他一些元素不更改。他希望数组的所有元素都相等。
现在他想知道是否有可能选择这样的整数 $x$ 并使用该 $x$ 更改数组的某些元素以使所有元素相等。
输入格式
输入的第一行包含一个整数$n$($1 \leq n \leq 100000$)-数组中整数的数量。
第二行包含 $n$ 个整数,即数组的元素$a_1$,$a_2$,$\cdots$ ,$a_n$($0 \leq a_i \leq 10^9$)。
输出格式
如果无法使数组的所有元素相等,则在输出的仅一行中打印“NO”(不带引号)。否则,打印“YES”(不带引号)。
样例输入
5
1 3 3 2 1
样例输出
YES
样例输入2
5
1 2 3 4 5
样例输出2
NO
提示
子任务一:$30$分,满足 $1 \leq n \leq 10$;
子任务二:$30$分,满足 $1 \leq n \leq 1000$ ;
子任务三:$40$分,满足 $1 \leq n \leq 100000$ 。
在第一个样本中,可以取 $x = 1$,然后将其添加到数组的第一个和最后一个元素,并从第二个和第三个元素中减去。