60分WA#2,4
查看原帖
60分WA#2,4
914275
__rnfmabj__楼主2023/7/28 17:42

整个机房里就我代码最鬼搐。。。。。。实在不会改了

#include <bits/stdc++.h>
using namespace std;
const int N=1e5+10;
int n,k,g,m,x,r=1;
struct lb{
	int id,l,r;
}a[N];
int main(){
	cin>>n;
	a[1].id=1;
	a[1].l=0;a[1].l=0; 
	for (int i=2;i<=n;i++){
		cin>>k>>g;
		a[i].id=i;
		if (g==0){
			a[a[k].l].r=i;
			a[i].l=a[k].l;
			a[k].l=i;
			a[i].r=k;
		}
		else{
			a[a[k].r].l=i;
			a[i].r=a[k].r;
			a[k].r=i;
			a[i].l=k;
		}
	}
	cin>>m;
	for (int i=1;i<=m;i++){
		cin>>x;
		a[a[x].r].l=a[x].l;
		a[a[x].l].r=a[x].r;
		a[x].r=0;
		a[x].l=0;
	}
	for (int i=1;i;i=a[i].l){
		if (a[i].l==0){
			r=i;
			break;
		}
	}
	while (a[r].r!=0){
		cout<<a[r].id<<' ';
		r=a[r].r;
	}
	cout<<a[r].id<<' ';
	return 0;
}
2023/7/28 17:42
加载中...