题解 | #查找兄弟单词#
查找兄弟单词
https://www.nowcoder.com/practice/03ba8aeeef73400ca7a37a5f3370fe68
#include <iostream>
#include <vector>
#include <string>
#include <algorithm>
using namespace std;
bool isBrother(string s1, string s2){
if(s1.size() != s2.size())
return false;
if(s1 == s2)
return false;
sort(s1.begin(), s1.end());
sort(s2.begin(), s2.end());
if(s1 != s2)
return false;
return true;
}
int main() {
int n,k;
string tmp, to_find;
vector<string> storage, ss;
cin >> n;
for(int i =0;i<n;i++){
cin>>tmp;
storage.push_back(tmp);
}
cin >> to_find;
cin>>k;
sort(storage.begin(), storage.end());
for(auto word:storage)
if(isBrother(word, to_find))
ss.push_back(word);
cout << ss.size() << endl;
if(k>= 1&& k< ss.size())
cout << ss[k-1] << endl;
}
// 64 位输出请用 printf("%lld")
