class Solution {
public:
bool buddyStrings(string A, string B) {
int n1=A.size(),n2=B.size();
if(n1!=n2) return false;
int ind1,ind2,cnt=0;
vector<int> v(26,0);
bool hasTwoSameLetter=false;
for(int i=0;i<n1;++i){
if(A[i]!=B[i]){
if(cnt==0){
ind1=i;
}
else if(cnt==1){
ind2=i;
}
else return false;
++cnt;
}
if(!hasTwoSameLetter){
if(++v[A[i]-'a']==2){
hasTwoSameLetter=true;
}
}
}
if(cnt!=2){
if(hasTwoSameLetter) return true;
else return false;
}
if(A[ind1]==B[ind2] && A[ind2]==B[ind1]) return true;
else return false;
}
};
Leetcode 859.亲密字符串
最新推荐文章于 2021-11-23 14:01:11 发布