每个对应位置的字符和重排前都不相同说明其中某一个字符不能超过总字符数量的一半,否则一定会有至少一个字符相同。 string x; cin>>x; char a; int n=x.size(); map<char,int>m; for(int i=0;i<n;i++){ m[x[i]]++; if (m[x[i]]>n/2){ ...