Rabbit的字符串
1 #include<bits/stdc++.h>
2 using namespace std;
3 const int maxn = 1e5+5;
4 char s[maxn];
5 int get_min_pos() {
6 int ans = 0, cmp = 1, k = 0, t, len = strlen(s);
7 while (ans<len && cmp<len && k<len) {
8 int t = s[(ans+k)%len]-s[(cmp+k)%len];
9 if (!t) k++;
10 else {
11 if (t > 0) ans += k+1;
12 else cmp += k+1;
13 if (ans == cmp) cmp++;
14 k = 0;
15 }
16 }
17 return min(ans,cmp);
18 }
19 int main() {
20 int n; scanf("%d",&n);
21 scanf("%s",s);
22 if (get_min_pos() == 0) puts("NO");
23 else puts("YES");
24 return 0;
25 }