Note
Code
#include<bits/stdc++.h>
using namespace std;
int cp[100000];
bool vis[100000]={false};
int main(){
#ifndef ONLINE_JUDGE
freopen("data.txt","r",stdin);
#endif
fill(cp,cp+100000,-1);
int n,d1,d2,m;
cin>>n;
set<int> ans;
vector<int> spot;
for(int i=0;i<n;i++){
scanf("%d%d",&d1,&d2);
cp[d1]=d2;
cp[d2]=d1;
}
cin>>m;
int query[m];
for(int i=0;i<m;i++){
scanf("%d",&query[i]);
if(cp[query[i]]==-1) ans.insert(query[i]);
else vis[query[i]]=true;
}
for(int i=0;i<m;i++){
if(cp[query[i]]!=-1&&vis[query[i]]==true&&vis[cp[query[i]]]==false)
ans.insert(query[i]);
}
printf("%d\n",ans.size());
for(auto i=ans.begin();i!=ans.end();i++){
if(i!=ans.begin()) printf(" ");
printf("%05d",*i);
}
return 0;
}