题目
思路
这题明明写的是200ms要求,但可以暴力破解,这是我万万没想到的- -; 散列记录夫妻,hash【id】=cpid; 再用一个散列记录到场; 之后暴力破解遍历0~100001;
测试点3:注意00000的输出,有格式要求,不能输出成0;
AC代码
#include<bits/stdc++.h>
using namespace std
;
int main(){
int n
; cin
>>n
;
int hash
[100010]; memset(hash
,-1,sizeof(hash
));
int a
,b
;
for(int i
=0;i
<n
;i
++){
cin
>>a
;
cin
>>b
;
hash
[a
]=b
;
hash
[b
]=a
;
}
int man
[100010]={0};
int m
; cin
>>m
;
for(int i
=0;i
<m
;i
++){
cin
>>a
;
man
[a
]=1;
}
int cnt
=0; int ans
[100010]={0};
for(int i
=0;i
<100010;i
++){
if(man
[i
]==1 && man
[hash
[i
]]!=1){
ans
[cnt
++]=i
;
}
}
cout
<<cnt
<<endl
;
for(int i
=0;i
<cnt
;i
++) {
if(i
!=cnt
-1) cout
<<setw(5)<<setfill('0')<<ans
[i
]<<' ';
else cout
<<ans
[i
];
}
return 0;
}