555 || +关1个
查看原帖
555 || +关1个
663164
chris731楼主2023/6/12 20:48
#include<bits/stdc++.h>
#define MAXN 100005
using namespace std;
vector<int>p[MAXN];
bool u[MAXN];
vector<int>pp[MAXN];
bool uu[MAXN];
queue<int>q;
void solve(int x){
	cout<<x<<" ";
 	for(int i=0,sz=p[x].size();i<sz;i++){
 		if(!u[p[x][i]]){
 			u[p[x][i]]=true;
			 solve(p[x][i]);	
		}
	}	
}
int main(){
 	int n,m;
 	cin>>n>>m; 
 	for(int i=1;i<=m;i++){
		int x,y;
 		cin>>x>>y;
 		p[x].push_back(y);
 		pp[x].push_back(y);
	}
	u[1]=true;
	solve(1);
	cout<<endl;
	uu[1]=true;
	q.push(1);
	while(!q.empty()){
		int x=q.front();
		q.pop();
		cout<<x<<" ";
	 	for(int i=0,sz=pp[x].size();i<sz;i++){
	 		if(!uu[p[x][i]]){
	 			uu[pp[x][i]]=true;
				q.push(pp[x][i]);	
			}
		}		
	}
    return 0;
}
//题

2023/6/12 20:48
加载中...