数据过于弱小
查看原帖
数据过于弱小
563663
xu222ux楼主2024/3/23 11:22

我写了一个错误代码:

#include<bits/stdc++.h>
using namespace std;
int n;
vector<int>mp[102];
int p[102];
int ans[102],now;
void dfs(int x){
	ans[++now]=x;
	for(int i=0;i<mp[x].size();i++){
		p[mp[x][i]]--;
		if(!p[mp[x][i]]){
			dfs(mp[x][i]);
		}
	}
	return ;
}
int main(){
	cin>>n;
	for(int i=1;i<=n;i++){
		while(true){
			int x;cin>>x;
			if(x==0)break;
			mp[i].push_back(x);
			p[x]++;
		}
	}
	for(int i=1;i<=n;i++){
		if(p[i]==0){
			dfs(i);
		}
	} 
	for(int i=1;i<=n;i++){
		cout<<ans[i]<<' ';
	}
	return 0;
}

过了。我这里建议加一组hack:

4
2 0
0
0
0
2024/3/23 11:22
加载中...