社区讨论
P5318 零分求调
题目总版参与者 3已保存回复 3
讨论操作
快速查看讨论及其快照的属性,并进行相关操作。
- 当前回复
- 3 条
- 当前快照
- 1 份
- 快照标识符
- @lrtvf2ax
- 此快照首次捕获于
- 2024/01/26 07:54 2 年前
- 此快照最后确认于
- 2024/01/26 11:17 2 年前
CPP
#include<bits/stdc++.h>
using namespace std;
struct edge{
int nxt,to;
}mp[1000005];
vector<int> v[1000005];
int n,m,tot;
int head[1000005];
int vis[1000005];
int wcnm[1000005];
void add(int u,int v){
mp[++tot].to = v;
mp[tot].nxt = head[u];
head[u] = tot;
return ;
}
void bfs(int x){
queue<int> q;
q.push(x);
vis[x] = 1;
while(!q.empty()){
int t = q.front();
printf("%d",t);
q.pop();
int len = v[t].size();
for(int i = 0;i < len;i++){
if(!vis[v[t][i]]){
q.push(v[t][i]);
vis[v[t][i]] = 1;
}
}
}
return ;
}
void dfs(int x){
printf("%d",x);
int len = v[x].size();
for(int i = 0;i < len;i++){
if(!wcnm[v[x][i]]){
wcnm[v[x][i]] = 1;
dfs(v[x][i]);
}
}
return ;
}
int main(){
scanf("%d%d",&n,&m);
for(int i = 1;i <= m;i++){
int u,sb;
scanf("%d%d",&u,&sb);
v[u].push_back(sb);
}
wcnm[1] = 1;
dfs(1);
printf("\n");
bfs(1);
return 0;
}
回复
共 3 条回复,欢迎继续交流。
正在加载回复...