nyoj stl找球号

来源:互联网 发布:修改apk软件版本号 编辑:程序博客网 时间:2024/06/05 05:38
最后的set写的没提交上,不知道对不,自己看一下,重要的是学习map和set
/*#include<stdio.h>
#include<iostream>
#include<algorithm>
#include<string.h>
#include<map>
#include<vector>
#include<cctype>
using namespace std;
vector<int> shu;
map<int,int> cnt;
int main()
{
    int m,n;
     scanf("%d%d",&m,&n) ;
 //{
  int i,j;
  int a[1000010],b[100010];
  memset(a,0,sizeof(a));
  memset(b,0,sizeof(b));
  for(i=0;i<m;i++)
  {
   scanf("%d",a[i]);
   cnt.insert(a[i]);
  }
  for(i=0;i<m;i++)
  {
   if(!cnt.count(a[i]))
      cnt[a[i]]=0;
      cnt[a[i]]++;
  }
  for(j=0;j<n;j++)
  {
   scanf("%d",&b[j]);
   shu.push_back(b[j]);
  }
  for(i=0;i<shu.size();i++)
  {
   if(cnt[shu[i]]==1)
   printf("YES\n");
   else
   printf("NO\n");
  } 
// }
 return 0 ;
} */
/*自己对map的理解不够,上面的写错了,下面的是百度的*/
 /*#include<iostream>
 #include<cstdio>
 #include<map>
 using namespace std;
 int main()
 {
 map<string,int>mymap;
 string str;
 int m,n,i;
 cin>>m>>n;
 for(i=0; i<m; i++)
 {
 cin>>str;
 mymap[str]++;
 }
 for(i=0; i<n; i++)
 {
 cin>>str;
 printf(mymap[str]==0?"NO\n":"YES\n");
 }
}*/
/*下面是我用set写的,希望可以帮到你*/
 #include<string.h>
 #include<iostream>
 #include<set>
 #include<stdio.h>
 using namespace std;
 set<int> s;
 int main()
 {
  int m,n;
  int i,x;
  //int a[1000010],b[100010];
  scanf("%d%d",&m,&n);
 for(i=0;i<m;i++)
 {
  scanf("%d",&x);
  s.insert(x);
 }
 for(i=0;i<n;i++)
 {
  scanf("%d",&x);
  if(s.find(x)!=s.end())
  printf("YES\n");
  else
  printf("NO\n");
 }
 return 0;
 }
0 0