Background
Special for beginners, ^_^
Description
大志在他买的一本书上遇到一个问题:
给定两个非负整数数组 A和 B,本题要求你挑除 A、B中都有的数字,输出各自特有的数字。要求按输入顺序先输出 A,再输出 B。
他现在想考考你,你能做出来吗?
Format
Input
共三行,第一行两个数 n,m表示数组 A,B的数字个数1≤n,m≤100。
第二行, n个非负整数,为数组A,一个数可能会出现多次,每个数不超过 105。
第三行, m个非负整数,为数组B,一个数可能会出现多次,每个数不超过 105。
输入保证A,B一定会有不同的数字。
Output
一行,先输出数组 A剩余的数字, 再输出数组B剩余的数字。
Samples
輸入資料 1
4 4
1 5 4 1
2 8 1 6
輸出資料 1
5 4 2 8 6
Limitation
1s, 1024KiB for each test case.
code
#include<cstdio>
using namespace std;
int main()
{
int n,m,a[10005],b[10005];
scanf("%d", &n);
scanf("%d", &m);
for(int i = 1; i <= n; i++)
{
scanf("%d", &a[i]);
}
for(int i = 1; i <= m; i++)
{
scanf("%d", &b[i]);
}
for(int i = 1; i <= n; i++)
{
int time = 0;
for(int j = 1; j <= m; j++)
{
if(a[i] == b[j])
{
time++;
}
}
if(time == 0)
{
printf("%d ", a[i]);
}
}
for(int i = 1; i <= m; i++)
{
int time = 0;
for(int j = 1; j <= n; j++)
{
if(b[i] == a[j])
{
time++;
}
}
if(time == 0)
{
printf("%d ",b[i]);
}
}
return 0;
}