解法:双指针
设置i、j分别指向字符串str两头,同时向中间走
如果str[i]!=str[j],则判断是左边该删除,还是右边该删除
#include <iostream>
#include <string>
using namespace std;
int main(){
string s;
int n;
cin>>n;
while(n--){
cin>>s;
int len=s.size();
int i=0, j=len-1;
while(i<=j){
if(s[i]!=s[j]){
if(s[i+1]==s[j])
cout<<i<<endl;
else
cout<<j<<endl;
break;
}
i++;
j--;
}
if(i>=j)
cout<<-1<<endl;
}
return 0;
} 
京公网安备 11010502036488号