Массив \([b_1, b_2, \ldots, b_m]\) является палиндромом, если \(b_i = b_{m+1-i}\) для каждого \(i\) от \(1\) до \(m\). Пустой массив также является палиндромом.
Массив называется калиндромом, если выполняется следующее условие:
-
Можно выбрать некоторое целое число \(x\) и удалить некоторые элементы массива, равные \(x\), так, чтобы оставшийся массив (после склеивания оставшихся частей) был палиндромом.
Обратите внимание, что необязательно удалять все элементы, равные \(x\), и необязательно удалять хотя бы один элемент, равный \(x\).
Например:
- \([1, 2, 1]\) является калиндромом, потому что вы можете просто не удалять ни одного элемента.
- \([3, 1, 2, 3, 1]\) является калиндромом, потому что можно выбрать \(x = 3\) и удалить оба элемента, равные \(3\), получив массив \([1, 2, 1]\), который является палиндромом.
- \([1, 2, 3]\) не является калиндромом.
Вам дан массив \([a_1, a_2, \ldots, a_n]\). Определите, является ли \(a\) калиндромом или нет.
Выходные данные
Для каждого наборов входных данных выведите YES, если \(a\) — калиндром, и NO в противном случае. Вы можете выводить каждую букву в любом регистре.
Примечание
В первом наборе входных данных массив \([1]\) уже является палиндромом, поэтому он также является калиндромом.
Во втором наборе входных данных мы можем выбрать \(x = 2\), удалить второй элемент и получить массив \([1]\), который является палиндромом.
В третьем наборе входных данных получить палиндром невозможно.
В четвертом наборе входных данных можно выбрать \(x = 4\) и удалить пятый элемент, получив \([1, 4, 4, 1]\). Также можно выбрать \(x = 1\), удалить первый и четвертый элементы и получить \([4, 4, 4]\).
Примеры
| № | Входные данные | Выходные данные |
|
1
|
4 1 1 2 1 2 3 1 2 3 5 1 4 4 1 4
|
YES
YES
NO
YES
|