0pts,求救玄关!!!
查看原帖
0pts,求救玄关!!!
471331
Harley_Wu楼主2023/7/25 09:14
#include <bits/stdc++.h>
using namespace std;
int n,m;
vector<int> p[1000010];
queue<int> q;
bool u[1000010];
void dfs(int x)
{
	cout<<x<<" ";
	for(int i=0,sz=p[x].size();i<sz;i++)
	{
		if(u[p[x][i]]==0)
		{
			u[p[x][i]]=1;
			dfs(p[x][i]);
		}
	}
}
int main()
{
	cin>>n>>m;
	for(int i=1;i<=m;i++)
	{
		int x,y;
		cin>>x>>y;
		p[x].push_back(y);
	}
	u[1]=1;
	dfs(1);
	cout<<endl;
	memset(u,0,sizeof(u));
	u[1]=1;
	q.push(1);
	while(!q.empty())
	{
		int x=q.front();
		q.pop();
		cout<<x<<" ";
		for(int i=0,sz=p[x].size();i<sz;i++)
		{
			if(u[p[x][i]]==0)
			{
				u[p[x][i]]=1;
				q.push(p[x][i]);
			}
		}
	}
    return 0;
}

2023/7/25 09:14
加载中...