1 条题解
-
1
世界上最好的题解😄
#include<bits/stdc++.h> using namespace std; int n,m; vector<int> g[100005]; void input(){ cin>>n>>m; int x,y; for(int i=0;i<m;++i){ cin>>x>>y; g[x].push_back(y); } for(int i=1;i<=n;++i){ sort(g[i].begin(),g[i].end()); } } bool used[100005]; void dfs(int k){ cout<<k<<" "; used[k]=true; for(int i=0;i<g[k].size();++i){ if(!used[g[k][i]])dfs(g[k][i]); } } queue<int> q; void bfs(){ memset(used,0,sizeof(used)); q.push(1); used[1]=true; cout<<1<<" "; while(!q.empty()){ int k=q.front(); q.pop(); for(int i=0;i<g[k].size();++i){ if(!used[g[k][i]]){ q.push(g[k][i]); used[g[k][i]]=true; cout<<g[k][i]<<" "; } } } } int main(){ input(); dfs(1);cout<<endl; bfs(); return 0; }
看完别忘了点赞哟👍
- 1
信息
- ID
- 4244
- 时间
- 1000ms
- 内存
- 125MiB
- 难度
- 2
- 标签
- 递交数
- 33
- 已通过
- 9
- 上传者