题解 | #查找兄弟单词#

查找兄弟单词

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

#include <iostream>
#include <string>
#include <vector>
#include <algorithm>
using namespace std;

int main() {
    int n;
    cin >> n;  //数据的输入个数
    vector <string> data;
    for (int i = 0;i < n;i++)
    {
        string strs;
        cin >> strs;
        data.push_back(strs);  //接收对应数据个数的容器
    }
    sort(data.begin(),data.end());  //按照字典排序
    string strs_cmp;  //接收兄弟单词
    cin >> strs_cmp;
    string strs_cmp_aft = strs_cmp;
    int a;            //接收要输出的第几个单词索引
    cin >> a;

    int geshu = 0;    //定义找到兄弟字符串的个数
    vector <string> data_after;
    for (auto it : data)
    {
        int shujudaxiao = it.size();
        if (shujudaxiao != strs_cmp.size())   //如果长度不相等肯定不是兄弟单词
        {
            continue;
        }
        else
        {
            string fangrushuju = it;
            if (it == strs_cmp)              //如果完全一样则不是兄弟单词
            {
                continue;
            }
            else
            {                                //看是不是兄弟字符串,如果是就放到新数组中
                sort(it.begin(),it.end());
                sort(strs_cmp_aft.begin(),strs_cmp_aft.end());
                if (it == strs_cmp_aft)
                {
                    data_after.push_back(fangrushuju);
                    geshu = geshu + 1;
                }
            }
        }
    }

    cout << geshu << endl;
    if (geshu != 0){
        cout << data_after[a - 1] << endl;
    }
}
// 64 位输出请用 printf("%lld")

全部评论

相关推荐

12-03 15:20
武汉大学 Java
点赞 评论 收藏
分享
10-09 17:17
已编辑
门头沟学院 Java
活泼的代码渣渣在泡池...:同学你好,我也是学院本,后天要面这个亚信科技,是实习,请问问题都啥样呀,我项目就做了网上的,这是第一次面试
投递多益网络等公司6个岗位
点赞 评论 收藏
分享
安静的鲸鱼offer...:神仙级别hr,可遇不可求,甚至他可能也是突然有感而发。只能说遇上是件幸事。
秋招开始捡漏了吗
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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