代码:
#include<iostream>
#include<map>
#include<vector>
using namespace std;
#define int long long
map<int,int>l,r;
signed main()
{
int q=0;
int op=-1e9-1,ed=1e9+1;
r[op]=ed;
l[ed]=op;
scanf("%lld",&q);
while(q--)
{
int z,x,y;
scanf("%lld",&z);
if(z==1)
{
scanf("%lld%lld",&x,&y);
int ll,rr;
if(y==0)
{
ll=op,rr=r[op];
}
else
{
ll=y,rr=r[y];
}
l[x]=ll;
r[x]=rr;
l[rr]=x;
r[ll]=x;
}
else
{
scanf("%lld",&x);
int ll=l[x],rr=r[x];
r[ll]=rr;
l[rr]=ll;
}
}
vector<int>p;
for(int i=r[op];i!=ed;i=r[i])
p.push_back(i);
cout<<p.size()<<endl;
for(auto i:p)
cout<<i<<" ";
return 0;
}