CF34D 求助
  • 板块学术版
  • 楼主AFO1
  • 当前回复17
  • 已保存回复17
  • 发布时间2021/8/4 10:05
  • 上次更新2023/11/4 12:03:59
查看原帖
CF34D 求助
250940
AFO1楼主2021/8/4 10:05

代码如下,目前结果是输入后死机

#include<bits/stdc++.h>
int n,f[500009],r1,r2,fa[500009],cnt;
int j;
using namespace std;
vector<int> link[500009];
void dfs(int pos,int pre)
{
	fa[pos]=pre;
	for(j=0;j<link[pos].size();j++)
		if(link[pos][j]!=pre) dfs(link[pos][j],pre);
}
int main()
{
	cin>>n>>r1>>r2;
	for(int i=1;i<=n;i++)
	{
		if(i==r1) continue;
		else {cin>>f[i];link[i].push_back(f[i]);link[f[i]].push_back(i);}
	}
	dfs(r2,0);
	for(int i=1;i<=n;i++) if(i!=r2) cout<<fa[i]<<" ";
	return 0;
}
2021/8/4 10:05
加载中...