请教
查看原帖
请教
1568315
weizilong楼主2024/12/28 11:46

教教我

bfs TLE

请大佬赐教

#include<bits/stdc++.h>
using namespace std;
int n,m,maxx;
bool d[100005]={};
struct node{
    vector<int> a;
}a[100005];
void dfs(int s){
	d[s]=1;
	maxx=max(maxx,s);
	for(int i=0;i<a[s].a.size();++i)if(!d[a[s].a[i]])dfs(a[s].a[i]);
}
int main(){
    cin>>n>>m;
    for(int i=1,f,t;i<=m;++i){
    	scanf("%d%d",&f,&t);
    	a[f].a.push_back(t);
	}
	for(int i=1;i<=n;++i){
		maxx=-1;
		memset(d,0,n+5);
		dfs(i);
		printf("%d ",maxx);
	}
    return 0;
}
2024/12/28 11:46
加载中...