华为机试 HJ81题解 | #字符串字符匹配#

字符串字符匹配

https://www.nowcoder.com/practice/22fdeb9610ef426f9505e3ab60164c93

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

bool MatchStr(string s, string t)
{
    bool bRet = false;
    set<char> sSet; // 借助set集合去重
    set<char> tSet;
    for (auto ch : s) {
        sSet.insert(ch);
    }
    for (auto ch2 : t) {
        tSet.insert(ch2);
    }
    // 遍历sSet
    // 1.如果有字符在sSet中出现但不在tSet中出现,则返回false
    for (auto ch : sSet) {
        auto it = tSet.find(ch);
        if (it == tSet.end()) {
            return false;
        }
    }
    return true;
}

int main() {
    std::string s, t;
    while (getline(cin, s)) { // 注意 while 处理多个 case
        getline(cin, t);
        if (MatchStr(s, t)) {
            cout << "true" << std::endl;
        } else {
            cout << "false" << std::endl;
        }
    }
}
// 64 位输出请用 printf("%lld")

全部评论

相关推荐

Southyeung:我说一下我的看法(有冒犯实属抱歉):(1)简历不太美观,给我一种看都不想看的感觉,感觉字体还是排版问题;(2)numpy就一个基础包,机器学习算法是什么鬼?我感觉你把svm那些写上去都要好一点。(2)课程不要写,没人看,换成获奖经历;(3)项目太少了,至少2-3个,是在不行把网上学习的也写上去。
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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