Papyrus在审判你 • 1年前
#include<bits/stdc++.h>
using namespace std;
int a[110][110];
int visited[110];
void deep(int v){
cout<<v<<" ";
visited[v]=1;
for(int i=1;i<110;i++){
if(a[v][i]==1&&!visited[i]){
deep(i);
}
}
}
void large(int jb){
queue<int>q;
q.push(jb);
while(!q.empty()){
int t=q.front();
visited[t]=1;
cout<<t<<" ";
for(int i=1;i<110;i++){
if(a[t][i]==1&&!visited[i]){
q.push(i);
visited[i]=1;
}
}
q.pop();
}
}
int main(){
int n,m;
cin>>n>>m;
memset(a,0,sizeof(a));
for(int i=0;i<m;i++){
int f,t;
cin>>f>>t;
a[f][t]=1;
}
memset(visited,0,sizeof(visited));
deep(1);
cout<<endl;
memset(visited,0,sizeof(visited));
large(1);
return 0;
}
评论:
请先登录,才能进行评论