TLE求助
查看原帖
TLE求助
384746
_JG233_楼主2021/5/23 09:17
#include <iostream>
#include <list>
#include <iterator>
using namespace std;
int main(){
	list<int> queue;
	queue.push_back(1);
	int n = 0;
	cin >> n;
	int k,p = 0;
	int m = 0;
	int x = 0;
	for(int i=2;i<=n;i++){
		cin >> k >> p;
		for(list<int>::iterator iter = queue.begin();iter!=queue.end();iter++){
			if(*iter == k){
				if(p == 0){
					queue.insert(iter,i); 
				}
				else{
					iter++;
					queue.insert(iter,i);
				}
				break;
			}
		}
	}
	cin >> m;
	for(int i=0;i<m;i++){
		cin >> x;
		for(list<int>::iterator iter2 = queue.begin();iter2 != queue.end();iter2++){
			if(*iter2 == x){
				iter2 = queue.erase(iter2);
			}
		}
	}
	for(list<int>::iterator iter3 = queue.begin();iter3!=queue.end();iter3++){
		cout << *iter3 << ' ';
	}
	return 0;
} 
2021/5/23 09:17
加载中...