| Kotlin Heroes: Episode 12 |
|---|
| Закончено |
В шоу-матче по одной компьютерной игре собираются принять участие $$$2n$$$ киберспортсменов; рейтинг $$$i$$$-го из них равен $$$a_i$$$. Рейтинги всех киберспортсменов различны.
Для каждого киберспортсмена наиболее увлекательным будет матч с тем киберспортсменом, который ближе всего к нему по рейтингу. Формально, для киберспортсмена $$$i$$$ лучшим соперником является такой другой киберспортсмен $$$j$$$, что абсолютная разница их рейтингов $$$|a_i-a_j|$$$ минимальна среди всех способов выбрать киберспортсмена $$$j$$$. Обратите внимание, что у одного и того же киберспортсмена может быть более одного лучшего соперника.
Например, если участвуют $$$4$$$ киберспортсмена с рейтингами $$$[3, 7, 5, 12]$$$, то:
Организаторы шоу-матча хотят разбить участников на пары так, чтобы каждый оказался ровно в одной паре, и в каждой паре киберспортсмены были бы лучшими соперниками друг для друга. Сообщите, существует ли такое разбиение.
В первой строке задано одно целое число $$$t$$$ ($$$1 \le t \le 100$$$) — количество наборов входных данных.
Каждый набор входных данных состоит из двух строк:
Для каждого набора входных данных, если можно разбить участников на пары так, чтобы в каждой паре участники были бы лучшими соперниками друг друга, выведите YES. Иначе выведите NO.
323 7 5 1223 7 5 823 7 5 9
NO YES YES
В первом примере разбиение невозможно. Например, если сформировать пары $$$(1, 3)$$$ и $$$(2, 4)$$$, участник $$$4$$$ не будет лучшим соперником для участника $$$2$$$.
Во втором примере можно разбить участников на пары $$$(1, 3)$$$ и $$$(2, 4)$$$.
| Название |
|---|


