![在这里插入图片描述](https://img-blog.csdnimg.cn/20200810152455415.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L2Jid3FzYg==,size_16,color_FFFFFF,t_70)
#include<iostream>
#include<vector>
#include<map>
#include<string>
#include<cstring>
#include<cstdio>
#include<algorithm>
#include<set>
using namespace std;
map<int, int>m;
const int maxn = 10001;
int a[maxn];
set<int>sss;
int main()
{
int n, temp1, temp2;
cin >> n;
for (int i = 0; i < n; i++)
{
cin >> temp1 >> temp2;
m[temp1] = temp2;
m[temp2] = temp1;
}
int j;
cin >> j;
for (int i = 0; i < j; i++)
{
cin >> a[i];
}
for (int i = 0; i < j; i++)
{
int *ans=find(a, a + j, m[a[i]]);
if (ans == a + j)
{
sss.insert(a[i]);
}
}
cout << sss.size() << endl;
for (auto it = sss.begin(); it != sss.end(); it++)
{
if (it != sss.begin())
cout << " ";
printf("%05d", *it);
}
}