题解 | #字符串字符匹配#用好set

#include <bits/stdc++.h>
using namespace std;
int main()
{
    string str1,str2;//str1为短字符串,str2为长字符串
    int iCount = 0;//字符个数计数器
    while(cin>>str1>>str2)
    {
        int len1 = str1.size();
        int len2 = str2.length();
        set<char> sym2;//字符型集合sym2,利用set自动去重特性
        //int len=str.length();
        for(int i=0;i<len2;i++)
        {
            sym2.insert(str2[i]); //向集合中添加长字符串中的字符
        }
        iCount = sym2.size();
        for(int i=0;i<len1;i++)
        {
            sym2.insert(str1[i]); //再向集合中添加短字符串中的字符   
        }
        if(sym2.size()!=iCount) 
// 利用set自动去重特性     
// 如果加入短字符串后,集合sym2的size和之前的集合sym2的大小相同,
// 说明短字符串的所有字符均在长字符串中出现过,则打印输出“true”
        //if(sym1.size() == sym2.size())
            cout<<"false"<<endl; //输出集合的尺寸
        else
            cout<<"true"<<endl;  
    }
    return 0;
}

全部评论

相关推荐

沉淀一会:1.同学你面试评价不错,概率很大,请耐心等待; 2.你的排名比较靠前,不要担心,耐心等待; 3.问题不大,正在审批,不要着急签其他公司,等等我们! 4.预计9月中下旬,安心过节; 5.下周会有结果,请耐心等待下; 6.可能国庆节前后,一有结果我马上通知你; 7.预计10月中旬,再坚持一下; 8.正在走流程,就这两天了; 9.同学,结果我也不知道,你如果查到了也告诉我一声; 10.同学你出线不明朗,建议签其他公司保底! 11.同学你找了哪些公司,我也在找工作。
点赞 评论 收藏
分享
评论
点赞
收藏
分享
牛客网
牛客企业服务