У нас есть массив длиной \(n\). Изначально каждый элемент равен \(0\), а на первом элементе находится указатель.
Мы можем выполнять следующие два вида операций любое количество раз (возможно, нулевое) в любом порядке:
- Если указатель находится не на последнем элементе, увеличьте элемент, на котором находится указатель, на \(1\). Затем переместите его на следующий элемент.
- Если указатель не находится на первом элементе, уменьшите элемент, на котором находится указатель, на \(1\). Затем переместите его на предыдущий элемент.
Но есть одно дополнительное правило. После того, как мы закончим, указатель должен находиться на первом элементе.
Вам дан массив \(a\). Определите, можно ли получить \(a\) после некоторых операций или нет.
Выходные данные
Для каждого набора входных данных выведите «Yes» (без кавычек), если после некоторых операций можно получить \(a\), и «No» (без кавычек) в противном случае.
Вы можете выводить «Yes» и «No» в любом регистре (например, строки «yEs», «yes», «Yes» будут распознаны как положительный ответ).
Примечание
В первом наборе входных данных мы можем получить массив после некоторых операций, но указатель не будет находиться на первом элементе.
Один из способов получения массива во втором наборе входных данных показан ниже.
\(\langle \underline{0}, 0, 0, 0\rangle \to \langle 1, \underline{0}, 0, 0 \rangle \to \langle \underline{1}, -1, 0, 0\rangle \to \langle 2, \underline{-1}, 0, 0\rangle \to \langle 2, 0, \underline{0}, 0\rangle \to \langle 2, \underline{0}, -1, 0\rangle \to \langle \underline{2}, -1, -1, 0\rangle\)
Примеры
| № | Входные данные | Выходные данные |
|
1
|
7 2 1 0 4 2 -1 -1 0 4 1 -4 3 0 4 1 -1 1 -1 5 1 2 3 4 -10 7 2 -1 1 -2 0 0 0 1 0
|
No
Yes
No
No
Yes
Yes
Yes
|