最小表示法
luckydrawbox · · 个人记录
求字符串
string zxbsf(string s){
int n=s.size();
s+=s;
int i=0,j=1,k;
while(i<n&&j<n){
for(k=0;k<n&&s[i+k]==s[j+k];k++);
if(!(k^n))
break;
if(s[i+k]>s[j+k]){
i+=k+1;
if(!(i^j))
i++;
}
else{
j+=k+1;
if(!(i^j))
j++;
}
}
return s.substr(min(i,j),n);
}