Последовательность из \(n\) чисел называется перестановкой, если она содержит в себе все числа от \(1\) до \(n\) ровно по одному разу. Например, последовательности [\(3, 1, 4, 2\)], [\(1\)] и [\(2,1\)] являются перестановками, а [\(1,2,1\)], [\(0,1\)] и [\(1,3,4\)] — нет.
Поликарп потерял свою любимую перестановку и нашёл только некоторые её элементы — числа \(b_1, b_2, \dots b_m\). Он уверен, что сумма потерянных элементов равна \(s\).
Определите, можно ли к заданной последовательности \(b_1, b_2, \dots b_m\) дописать одно или более чисел так, что сумма дописанных чисел равна \(s\), а полученный новый массив является перестановкой?
Выходные данные
Выведите \(t\) строк, каждая из которых является ответом на соответствующий набор входных данных. В качестве ответа выведите «YES», если к массиву \(b\) можно дописать несколько элементов, что их сумма равна \(s\) и в результате получится перестановка. Выведите «NO» в противном случае.
Вы можете выводить ответ в любом регистре (например, строки «yEs», «yes», «Yes» и «YES» будут распознаны как положительный ответ).
Примечание
В первом наборе входных данных примера \(m=3, s=13, b=[3,1,4]\). Вы можете дописать к \(b\) числа \(6,2,5\), сумма которых равна \(6+2+5=13\). Обратите внимание, что итоговый массив станет равен \([3,1,4,6,2,5]\), что является перестановкой.
Во втором наборе входных данных \(m=1, s=1, b=[1]\). Вы не можете дописать к \([1]\) одно или более чисел так, что их сумма равна \(1\) и в результате получится перестановка.
В третьем наборе входных данных примера \(m=3, s=3, b=[1,4,2]\). Вы можете дописать к \(b\) число \(3\). Обратите внимание, что итоговый массив станет равен \([1,4,2,3]\), что является перестановкой.
Примеры
| № | Входные данные | Выходные данные |
|
1
|
5 3 13 3 1 4 1 1 1 3 3 1 4 2 2 1 4 3 5 6 1 2 3 4 5
|
YES
NO
YES
NO
YES
|