Linear Search
You are given a sequence of n integers S and a sequence of different q integers T. Write a program which outputs C, the number of integers in T which are also in the set S.
Input
In the first line n is given. In the second line, n integers are given. In the third lineq is given. Then, in the fourth line, q integers are given.
Output
Print C in a line.
Constraints
- n ≤ 10000
- q ≤ 500
- 0 ≤ an element in S ≤ 109
- 0 ≤ an element in T ≤ 109
Sample Input 1
5 1 2 3 4 5 3 3 4 1
Sample Output 1
3
Sample Input 2
3 3 1 2 1 5
Sample Output 2
0
Notes
代码如下:
#include <iostream>
#include <cstdio>
using namespace std;
const int maxn = 10000 + 5;
int a[maxn];
int sum = 0;
int n;
bool find(int key){
for(int i = 1;i <= n; i++){
if(a[i] == key)return true;
}
return false;
}
int main(){
scanf("%d",&n);
for(int i = 1;i <= n; i++){
scanf("%d",&a[i]);
}
int q;
scanf("%d",&q);
for(int i = 1;i <= q; i++){
int x;
scanf("%d",&x);
if(find(x)){
sum++;
}
}
printf("%d\n",sum);
}