CF1203A.Circle of Students

入门

通过率:0%

时间限制:2.00s

内存限制:256MB

AC君温馨提醒

该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

There are nn students standing in a circle in some order. The index of the ii-th student is pip_i. It is guaranteed that all indices of students are distinct integers from 11 to nn (i. e. they form a permutation).

Students want to start a round dance. A clockwise round dance can be started if the student 22 comes right after the student 11 in clockwise order (there are no students between them), the student 33 comes right after the student 22 in clockwise order, and so on, and the student nn comes right after the student n−1n - 1 in clockwise order. A counterclockwise round dance is almost the same thing — the only difference is that the student ii should be right after the student i−1i - 1 in counterclockwise order (this condition should be met for every ii from 22 to nn).

For example, if the indices of students listed in clockwise order are [2,3,4,5,1][2, 3, 4, 5, 1], then they can start a clockwise round dance. If the students have indices [3,2,1,4][3, 2, 1, 4] in clockwise order, then they can start a counterclockwise round dance.

Your task is to determine whether it is possible to start a round dance. Note that the students cannot change their positions before starting the dance; they cannot swap or leave the circle, and no other student can enter the circle.

You have to answer qq independent queries.

有 nn 名学生按某种顺序围成一个圆圈站立。第 ii 个位置上的学生的编号为 pip_i。保证所有学生的编号均为 11 到 nn 之间的互不相同的整数(即它们构成一个排列)。

学生们希望开始一场“环形舞”(round dance)。若在顺时针方向上,学生 22 紧跟在学生 11 之后(二者之间没有其他学生),学生 33 紧跟在学生 22 之后,……,学生 nn 紧跟在学生 n−1n-1 之后,则可以开始一场顺时针环形舞。而逆时针环形舞则几乎相同,唯一的区别是:对每个 ii(从 22 到 nn),学生 ii 必须在逆时针方向上紧跟在学生 i−1i-1 之后。

例如,若学生编号按顺时针顺序排列为 [2,3,4,5,1][2, 3, 4, 5, 1],则他们可以开始一场顺时针环形舞。若学生编号按顺时针顺序排列为 [3,2,1,4][3, 2, 1, 4],则他们可以开始一场逆时针环形舞。

你的任务是判断是否可能开始一场环形舞。注意:在开始舞蹈前,学生不能改变自己的位置;他们既不能交换位置,也不能离开圆圈,也不允许其他学生加入圆圈。

你需要回答 qq 个相互独立的查询。

输入格式

The first line of the input contains one integer qq (1≤q≤2001 \le q \le 200) — the number of queries. Then qq queries follow.

The first line of the query contains one integer nn (1≤n≤2001 \le n \le 200) — the number of students.

The second line of the query contains a permutation of indices p1,p2,…,pnp_1, p_2, \dots, p_n (1≤pi≤n1 \le p_i \le n), where pip_i is the index of the ii-th student (in clockwise order). It is guaranteed that all pip_i are distinct integers from 11 to nn (i. e. they form a permutation).

输入的第一行包含一个整数 qq(1≤q≤2001 \le q \le 200),表示查询次数。随后是 qq 次查询。

每次查询的第一行包含一个整数 nn(1≤n≤2001 \le n \le 200),表示学生的数量。

每次查询的第二行包含一个索引的排列 p1,p2,…,pnp_1, p_2, \dots, p_n(1≤pi≤n1 \le p_i \le n),其中 pip_i 表示顺时针方向上第 ii 个学生的编号。保证所有 pip_i 均为 11 到 nn 之间互不相同的整数(即构成一个排列)。

输出格式

For each query, print the answer on it. If a round dance can be started with the given order of students, print "YES". Otherwise print "NO".

对于每个查询,请输出其答案。如果能以给定的学生顺序开始圆圈舞,则输出 “YES”;否则输出 “NO”。

输入输出样例

  • 输入#1

    5
    4
    1 2 3 4
    3
    1 3 2
    5
    1 2 3 5 4
    1
    1
    5
    3 2 1 5 4

    输出#1

    YES
    YES
    NO
    YES
    YES

输入解题思路,AI测评打分。不知道怎么写?

首页