元素查找

时间限制: 1 s 空间限制: 128000 KB 题目等级 : 钻石 Diamond
题目描述 Description

给出n个正整数,然后有m个询问,每个询问一个整数,询问该整数是否在n个正整数中出现过。

输入描述 Input Description

第一行两个整数 n 和m。

第二行n个正整数(1<=n<= 100000)

第三行m个整数(1<=m<=100000)

输出描述 Output Description

一共m行,若出现则输出YES,否则输出NO

样例输入 Sample Input

4 2

2 1 3 4

1 9

样例输出 Sample Output

YES

NO

数据范围及提示 Data Size & Hint

所有数据都不超过10^8

10^8是開的了bool數組的,所以說-

代碼實現:

 1 #include<cstdio>
 2 int n,m,a;
 3 bool v[100000010];
 4 int main(){
 5     scanf("%d%d",&n,&m);
 6     for(int i=0;i<n;i++){
 7         scanf("%d",&a);
 8         v[a]=1;
 9     }
10     for(int i=0;i<m;i++){
11         scanf("%d",&a);
12         if(v[a]) printf("YES\n");
13         else printf("NO\n");
14     }
15     return 0;
16 }

此題甚水~

posted @ 2016-12-18 16:07  J_william  阅读(226)  评论(0编辑  收藏  举报