nyist 626 intersection set

http://acm.nyist.net/JudgeOnline/problem.php?pid=626

intersection set

时间限制:1000 ms  |  内存限制:65535 KB
难度:1
 
描述
两个集合,你只需要求出两个集合的相同元素,并输出个数。
 
输入
m n
{a1 , a2 , a3 , a4 … ai … am}
{b1 , b2 , b3 , b4 … bi … bn}
1 <= n , m <= 50000 , 保证一个集合中不会输入重复数据
0 <= ai , bi <= 100000
多组测试数据
输出
一行一个数据,为两个集合中相同的元素个数
样例输入
8 8

1 5 6 9 10 12 16 59

5 6 9 8 15 17 65 98
样例输出
3

分析:
把两组数据直接存到一个数组里,sort排序去重即可。

AC代码:

 1  

 2 #include <stdio.h>

 3 #include <algorithm>

 4 using namespace std;

 5 int num[110010];

 6 int main()

 7 {

 8     int m,i,n,count;

 9     while(~scanf("%d %d",&m,&n))

10     {

11         count=0;

12         for(i=0;i<m+n;i++)

13             scanf("%d",&num[i]);

14         sort(num,num+m+n);

15         for(i=0;i<n+m-1;i++)

16             if(num[i]==num[i+1])

17                 count++;

18         printf("%d\n",count);

19     }

20     return 0;

21 }
View Code

你可能感兴趣的:(intersect)