Search I
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 line q is given. Then, in the fourth line, qintegers 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
Sample Input 3
5 1 1 2 2 3 2 1 2
Sample Output 3
2
Notes
#include<iostream>
#include<stdio.h>
using namespace std;
const int maxn = 1e5 + 1;
int pre(int a[],int n,int k)
{
int i = 0;
a[n] = k;
while (a[i] != k)i++;
//printf("i=%d\n", i);
return i != n;
}
int main()
{
int n;
int sum = 0;
int x;
int q;
int a[maxn];
scanf("%d", &n);
for (int i = 0; i < n; i++)
{
scanf("%d", &a[i]);
}
scanf("%d", &q);
for (int i = 0; i < q; i++)
{
scanf("%d", &x);
if (pre(a, n, x))
sum++;
}
printf("%d\n", sum);
return 0;
}