题解:P14245 [CCPC 2024 Shandong I] 左移
GEN_KASOUHA · · 题解
P14245通道
思路
题目要求令
所以在移动第
相等的话直接输出此次循环的次数,最后结束循环。
code
//头文件省略
int t;
int main(){
ios::sync_with_stdio(false);
cin.tie(0);
cout.tie(0);
cin>>t;
for(int n=1;n<=t;n++){
string s;
cin>>s;
int len=s.size();
int m=s[len-1];
if(s[0]==m || len==1){
cout<<0<<endl;
continue;
}else{
bool cnt=false;
for(int i=0;i<len;i++){
if(s[i]==s[i+1]){
cnt=true;
cout<<i+1<<endl;
break;
}
}
if(!cnt) cout<<-1<<endl;
}
}
return 0;
}
- 注:在循环遍历前增加特判加快效率,特判不用移动就能保证首位相同或字符串长度为1的情况。