Вам задано $$$n$$$ точек с целочисленными координатами на координатной оси $$$OX$$$. Координата $$$i$$$-й точки равна $$$x_i$$$. Все координаты точек различны и заданы в строго возрастающем порядке.
Для каждой точки $$$i$$$ вы можете не более одного раза сделать следующую операцию: взять эту точку и подвинуть ее на $$$1$$$ влево или вправо (то есть вы можете изменить ее координату $$$x_i$$$ на $$$x_i - 1$$$ или на $$$x_i + 1$$$). Другими словами, вы можете выбрать для каждой точки по отдельности ее новую координату. Для $$$i$$$-й точки новой координатой может быть $$$x_i - 1$$$, $$$x_i$$$ или $$$x_i + 1$$$.
Ваша задача — определить, сможете ли вы подвинуть точки описанным выше способом так, чтобы новое множество точек образовывало последовательный отрезок целых чисел, то есть для какого-то целого числа $$$l$$$ координаты точек будут равны $$$l, l + 1, \ldots, l + n - 1$$$.
Заметьте, что результирующее множество также должно состоять из точек с различными координатами.
Вам предстоит ответить на $$$t$$$ независимых наборов тестовых данных.
Первая строка входных данных содержит одно целое число $$$t$$$ ($$$1 \le t \le 2 \cdot 10^4$$$) — количество наборов тестовых данных. Затем следуют $$$t$$$ наборов.
Первая строка набора тестовых данных содержит одно целое число $$$n$$$ ($$$1 \le n \le 2 \cdot 10^5$$$) — количество точек в множестве $$$x$$$.
Вторая строка набора тестовых данных содержит $$$n$$$ целых чисел $$$x_1 < x_2 < \ldots < x_n$$$ ($$$1 \le x_i \le 10^6$$$), где $$$x_i$$$ — координата $$$i$$$-й точки.
Гарантируется, что точки заданы в строго возрастающем порядке (это также значит, что все координаты различны). Также гарантируется, что сумма $$$n$$$ не превосходит $$$2 \cdot 10^5$$$ ($$$\sum n \le 2 \cdot 10^5$$$).
Выведите ответ на каждый набор тестовых данных — если множество точек из набора может быть сдвинуто таким образом, чтобы образовывать последовательный отрезок целых чисел, выведите YES, иначе выведите NO.
5 2 1 4 3 1 2 3 4 1 2 3 7 1 1000000 3 2 5 6
YES YES NO YES YES
Название |
---|