set+字符串——高手之在一起

来源:互联网 发布:淘宝客卖家怎么推广 编辑:程序博客网 时间:2024/05/14 15:33

题目来源

洛谷P1184高手之在一起

https://www.luogu.org/problem/show?pid=1184


思路


用set判断一下就好了


注意事项


输入特别玄学!!!


错误输入

k="";
x=getchar();
while((x>=65&&x<=90)||x==' ')
k+=x,x=getchar();

正确输入


while(!((x>=65&&x<=90)||x==' '))
x=getchar();
while((x>=65&&x<=90)||x==' ')
k+=x,x=getchar();

只能说洛谷的玄学数据我不懂QAQ


代码(C++)


#include <iostream>#include <cstdio>#include <set>using namespace std;int n,m,ans=0;char x;string k;set<string> s;int main(){cin>>n>>m;x=getchar();for(int i=1;i<=n;++i){k="";while(!((x>=65&&x<=90)||x==' '))x=getchar();while((x>=65&&x<=90)||x==' ')k+=x,x=getchar();s.insert(k);}for(int i=1;i<=m;++i){k="";while(!((x>=65&&x<=90)||x==' '))x=getchar();while((x>=65&&x<=90)||x==' ')k+=x,x=getchar();if(s.find(k)!=s.end())++ans;}cout<<ans;return 0;}


原创粉丝点击