思路
非常容易发现.只有相邻的差值是1或者(n-1),而且n-1只能有一个的时候才成立,然后就,,
代码
#include<bits/stdc++.h>
using namespace std ;
int a[205] ;
int main() {
int q ;
bool flag1 , flag2 ;
cin >> q ;
while(q--) {
memset(a,0,sizeof(a)) ;
int n , i = 1 ;
cin >> n ;
while(i <= n) {
cin >> a[i] ;
i ++ ;
}
i = 2 ;
flag1=0;
flag2=0;
while(i<=n) {
if (a[i]!=a[i-1]+1&&!(a[i]==1&&a[i-1]==n)) {
flag1=1;
break;
}
i++;
}
i=2;
while(i<=n) {
if (a[i]!=a[i-1]-1&&!(a[i]==n&&a[i-1]==1)) {
flag2=1;
break;
}
i++;
}
if (flag1&&flag2) {
cout<<"NO"<<endl;
} else {
cout<<"YES"<<endl;
}
}
return 0;
}