社区讨论

bfs 0pts求助

P3916图的遍历参与者 3已保存回复 2

讨论操作

快速查看讨论及其快照的属性,并进行相关操作。

当前回复
2 条
当前快照
1 份
快照标识符
@mjf23phi
此快照首次捕获于
2025/12/21 09:36
2 个月前
此快照最后确认于
2025/12/23 16:05
2 个月前
查看原帖
CPP
#include<bits/stdc++.h>
#define ll long long
#define AKIOI ios::sync_with_stdio(false);cin.tie(0),cout.tie(0)
#define AKNOI return 0
#define db double
#define int register int
#define endl '\n'
using namespace std;
ll n,m,maxn[100005];
vector<ll>p[100005];
bool vis[100005];
void bfs(ll x){
	queue<ll>q;
	q.push(x);
	while(!q.empty()){
		ll now=q.front();
		q.pop();
		for(auto it:p[now]){
			if(!vis[it]){
				vis[it]=1;
				/*maxn[it]=*/maxn[now]=maxn[x]=max(maxn[x],it);
				q.push(it);
			}
		}
	}
}
signed main(){
	AKIOI;
	ll n,m;
	cin>>n>>m;
	for(int i=1;i<=n;i++) maxn[i]=i;
	for(int i=1;i<=m;i++){
		ll u,v;
		cin>>u>>v;
		p[u].push_back(v);
	}
	bfs(1);
	for(int i=1;i<=n;i++) cout<<maxn[i]<<' ';
	AKNOI;
}

回复

2 条回复,欢迎继续交流。

正在加载回复...