Sample Input
3
11111 22222
33333 44444
55555 66666
7
55555 44444 10000 88888 22222 11111 23333
Sample Output
5
10000 23333 44444 55555 88888
思路:
我打开这道题的时候是条单身狗,现在已经有一个可爱的、美丽的女朋友啦,希望每个快乐的程序员都有自己所爱。
一个数组记录夫妻之间的关系,对输入的人进行判断,然后用第二个数组记录单身狗。最后对ID号排序即可,算一下人数。
代码
#include<stdio.h>
int main()
{
int a[100000]={0};
int k,j;
int i;
int n;
scanf("%d",&n);
for(i=1;i<=n;i++){
scanf("%d %d",&j,&k);
a[j]=k;
a[k]=j;
}
int q;
scanf("%d",&q);
int b[100000]={0};
int t[10002];
for(i=1;i<=q;i++){
scanf("%d",&t[i]);
}
int r=0;
int p;
for(i=1;i<=q;i++){
int f=0;
for(p=1;p<=q;p++){
if(a[t[i]]==t[p]){
f=1;
break;
}
}
if(f==0){
b[r]=t[i];
r++;
}
}
for(i=1;i<r;i++){
for(p=0;p<r-i;p++){
if(b[p]>b[p+1]){
int temp;
temp=b[p];
b[p]=b[p+1];
b[p+1]=temp;
}
}
}
printf("%d\n",r);
if(r!=0){
printf("%05d",b[0]);
for(i=1;i<r;i++){
printf(" %05d",b[i]);
}
}
return 0;
}