题解 | 查找兄弟单词

查找兄弟单词

https://www.nowcoder.com/practice/03ba8aeeef73400ca7a37a5f3370fe68

#include <iostream>
#include<vector>
#include<algorithm>

using namespace std;
bool isbrother(string str, string order) {
    if (str.length() == order.length()) {
        if (str == order) {
            return false;
        }
        sort(str.begin(), str.end()); //字符串按字母顺序排序
        sort(order.begin(), order.end());
        if (str == order) {
            return true;
        }
    }
    return false;
}
int main() {
    int n;//输入字典中单词的个数
    while (cin >> n) {
        vector<string>order(n);
        for (int i = 0; i < n; i++) {
            cin >> order[i];
        }
        string str;
        cin >> str; //输入母字符串
        int k;
        cin >> k; //输入要排序的第几个
        sort(order.begin(), order.end());
        int num = 0;
        string des = "";
        for (int i = 0; i < n; i++) {
            if (isbrother(str, order[i])) { //比较是不是兄弟单词
                ++num;
                if(num == k){
                    des = order[i];
                }
            }
        }
        cout << num << endl;
        if(!des.empty()){
            cout << des << endl;
        }
    }
    return 0;
}

全部评论

相关推荐

一表renzha:你点进去没打招呼他也会有提示的,之前我点进美的,还没打招呼,他马上给我发了不太合适哦
点赞 评论 收藏
分享
05-03 12:45
西南大学 Java
nsnzkv:你这项目写的内容太多了,说实话都是在给自己挖坑,就算简历过了,后面面试也难受
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务