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

Задача . C. Влад строит красивый массив


Владу подарили массив \(a\) из \(n\) целых положительных чисел. Теперь он хочет построить из него красивый массив \(b\) длины \(n\).

Влад считает массив красивым, если все числа в нём положительные и имеют одну чётность. То есть все числа в красивом массиве больше нуля и либо все являются чётными либо все являются нечётными.

Для построения массива \(b\) Влад может присвоить каждому \(b_i\) либо значение \(a_i\), либо \(a_i - a_j\), где можно выбрать любое \(j\) от \(1\) до \(n\).

Чтобы не пытаться сделать невозможное, Влад просит вас определить, можно ли построить красивый массив \(b\) длины \(n\) с помощью его массива \(a\).

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

В первой строке входных данных содержится целое число \(t\) (\(1 \le t \le 10^4\)) — количество наборов входных данных в тесте.

Далее следуют описания наборов.

В первой строке набора содержится одно целое число \(n\) (\(1 \le n \le 2 \cdot 10^5\)) — длина массива \(a\).

Во второй строке набора содержится \(n\) целых положительных чисел \(a_1, a_2, \dots, a_n\) (\(1 \le a_i \le 10^9\)) — элементы массива \(a\).

Гарантируется, что сумма \(n\) по всем наборам не превосходит \(2 \cdot 10^5\)

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

Выведите \(t\) строк, каждая из которых является ответом на соответствующий набор входных данных. В качестве ответа выведите «YES», если Влад может построить красивый массив \(b\), и «NO» в противном случае.

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


Примеры
Входные данныеВыходные данные
1 7
5
2 6 8 4 3
5
1 4 7 6 9
4
2 6 4 10
7
5 29 13 9 10000001 11 3
5
2 1 2 4 2
5
2 4 5 4 3
4
2 5 5 4
NO
YES
YES
YES
YES
NO
NO

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

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