题解 | #查找兄弟单词#

查找兄弟单词

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")

全部评论

相关推荐

点赞 收藏 评论
分享
牛客网
牛客企业服务