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

Задача . A. Краска Дореми №3


Задача

Темы: Конструктив *800

Массив целых положительных чисел \(b_1, b_2, \ldots, b_n\) называется хорошим, если все суммы двух соседних элементов равны одному и тому же значению. Более формально, массив является хорошим, если существует такое число \(k\), что \(b_1 + b_2 = b_2 + b_3 = \ldots = b_{n-1} + b_n = k\).

У Дореми есть массив \(a\) длины \(n\). Она может переставлять его элементы (менять их порядок) как угодно. Определите, сможет ли она сделать массив хорошим.

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

Каждый тест состоит из нескольких наборов входных данных. В первой строке находится одно целое число \(t\) (\(1\le t\le 100\)) — количество наборов входных данных. Далее следует описание наборов входных данных.

Первая строка каждого набора входных данных содержит одно целое число \(n\) (\(2 \le n \le 100\)) — длину массива \(a\).

Вторая строка каждого набора входных данных содержит \( n \) целых чисел \( a_1,a_2,\ldots,a_n \) (\(1 \le a_i \le 10^5\)).

Ограничений на сумму \(n\) по всем наборам входных данных нет.

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

Для каждого набора входных данных выведите «Yes» (без кавычек), если массив можно сделать хорошим, и «No» (без кавычек) в противном случае.

Вы можете выводить каждую букву в любом регистре (строчную или заглавную). Например, строки «yEs», «yes», «Yes» и «YES» будут приняты как положительный ответ.

Примечание

В первом наборе входных данных \([8,9]\) и \([9,8]\) являются хорошими.

Во втором наборе входных данных массив \([1,2,1]\) является хорошим, так как \(a_1+a_2=a_2+a_3=3\).

Для третьего набора входных данных можно показать, что ни одна перестановка не является хорошей.


Примеры
Входные данныеВыходные данные
1 5
2
8 9
3
1 1 2
4
1 1 4 5
5
2 3 3 3 3
4
100000 100000 100000 100000
Yes
Yes
No
No
Yes

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

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