#include<string.h>
#include <iostream>
#include <vector>
#include <algorithm>
#include <set>
#include <bits/stdc++.h>
// 判断短字符串S中的所有字符是否在长字符串T中全部出现。
// 请注意本题有多组样例输入。
using namespace std;
// 输入两个字符串。第一个为短字符串,第二个为长字符串。两个字符串均由小写字母组成。
// 输出:如果短字符串的所有字符均在长字符串中出现过,则输出字符串"true"。否则输出字符串"false"。
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; //输出集合的尺寸elsecout<<"true"<<endl; }return 0;
}
本文发布于:2024-01-28 00:58:36,感谢您对本站的认可!
本文链接:https://www.4u4v.net/it/17063747183696.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
留言与评论(共有 0 条评论) |