아직 만들고 있는 페이지입니다.

이 페이지는 아직 만드는 중입니다. 보이는 내용은 바뀔 수 있습니다.

Симметричная поляна

시간 제한2초메모리 제한1024 MB

요약
자작나무와 소나무를 원형으로 나열한 이진 문자열이 주어질 때, 중심을 지나는 어떤 축이 두 반쪽을 같게 만드는지 판정한다.
난이도

보통10점 중 4점

유형
문자열, 문자열 매칭, 구현
정답자
아직 제출이 없습니다

문제

Лесов много, но не каждый из них --- волшебный. Для того, чтобы лес был волшебным, должно соблюдаться много условий. Все они еще толком не изучены, но про одно известно достоверно: лес не может быть волшебным, если в нем нет круглой симметричной поляны.

Рассмотрим, для простоты, лес, в котором растут березы и сосны. В этом лесу есть только одна круглая поляна. Вокруг нее растут nn деревьев. Каждое дерево является или сосной, или березой. Ось поляны --- прямая, проходящая через центр поляны и разбивающая ее на две половины. Если она проходит через какое-то дерево, то оно попадает в обе половины. Если при этом одна из половин симметрична другой, то это ось симметрии и поляна симметрична. Таким образом, следующие поляны симметричны (белыми кругами обозначены березы, черными --- сосны):

А эта поляна не симметрична, какую бы ось мы не выбрали:

입력

В первой строке входного файла содержится одно целое число TT (1≤T≤101 \le T \le 10) --- количество тестов в файле. Далее следуют TT блоков с описаниями самих тестов.

Каждое описание теста состоит из двух строк. Первая строка содержит одно целое число nn (2≤n≤1052 \le n \le 10^5) --- количество деревьев, окружающих поляну. В следующей строке содержатся nn целых чисел a_ia\_i (0≤a_i≤10 \le a\_i \le 1) --- описание деревьев, окружающих поляну, в порядке обхода по часовой стрелке. 00 соответствует березе, 11 --- сосне.

출력

Выведите в выходной файл TT строк, содержащих ответы на тесты. В строке с номером ii выведите Yes, если у соответствующей поляны есть ось симметрии, и No --- если поляна не симметрична.

예제1

  1. 예제 1

    입력
    4
    6
    0 1 1 0 1 1
    5
    0 1 0 1 1
    6
    1 0 1 0 1 0
    6
    0 0 1 0 1 1
    
    예상 출력
    Yes
    Yes
    Yes
    No