求救!!!
查看原帖
求救!!!
1129659
Kevin626楼主2024/7/3 10:32

样例过了, WA TLE WA TLE TLE qwq 代码在这,大神看看吧!

#include<bits/stdc++.h>
using namespace std;

const int N=1e5+100;
int x,k,n,p,m;
int e[N],en[N],head,rear,idx;
void init() { // 定义
	head=0;
	idx=1;
	en[head]=-1;
	return;
}
void add(int k,int x) { //插入
	e[idx]=x;
	en[idx]=en[k];
	en[k]=idx;
	idx++;
	return;
}
void remove(int k) {
	en[k]=en[en[k]];
	return;
}
int chazhao(int num) {
	for(int i=0; i<=n; i++)
		if(e[en[i]]==num)return i;
	return -1;
}
int chazhaoo(int num) {
	for(int i=0; i<=n; i++)
		if(e[en[i]]==num)return i;
}

int main() {
	cin>>n;
	init();
	add(head,1);
	for(int i=2; i<=4; i++) {
		cin>>k>>p;
		if(p==1)add(k,i);
		else add(chazhaoo(k),i);
	}
	cin>>m;
	for(int i=1; i<=m; i++) {
		cin>>x;
		remove(chazhao(x));
	}
	int cnt=en[head];
	while(cnt!=-1) {
		cout<<e[cnt]<<' ';
		cnt=en[cnt];
	}
//	for(int i=0;i<=n;i++)
//		if(e[i]>0)cout<<e[i]<<" ";
//	cerr<<endl;
//	for(int i=0;i<=n;i++)
//		if(e[i]>0)cerr<<en[i]<<" ";
	return 0;
}

谢谢大家

2024/7/3 10:32
加载中...