洛谷 P1709 隐藏口令Hidden Password

->题目链接

题解:

贪心+字符串

 

#include<iostream>
#include<cstring>
#define N 5000005
using namespace std;
char s[N];
int x,n,ans,t[N];
int cat(int p,int q) {
    for(int i=0; i<n; i++)
        if(s[(p+i)%n]!=s[(q+i)%n])
            return s[(p+i)%n]<s[(q+i)%n];
    return 0;
}
int main() {
    cin>>n;
    for(int i=0; i<n; i++) {
        cin>>s[i];t[i]++;
        if(s[i]==s[i-1]) t[x]++,t[i]--;
        else x=i;
    }
    for(int i=1; i<n; i++)
        if(t[i]!=0&&cat(i,ans)) ans=i;
    cout<<ans;
    return 0;
}
AC

 

依然寻找着,得不到的你。

 

posted @ 2018-08-07 10:59  IXIS  阅读(210)  评论(0编辑  收藏  举报