全WA求助
查看原帖
全WA求助
529292
William132楼主2024/8/12 15:29
#include<iostream>
#include<stdio.h>
#include<vector>
#include<cstring>
using namespace std;
const int mod = 80112002;
vector<int>g[5005];
int maxn[5005];
int n,m,a,b,ans = -1;
int l(int x){
	if (maxn[x] != -1) return maxn[x];
	maxn[x] = 0;
	for(int i = 0;i < g[x].size();i++){
		int t = g[x][i];
		maxn[x] = max(maxn[x],l(t))%mod;
	}
	maxn[x] = (maxn[x] + 1)%mod;
	return maxn[x];
}
int main(){
	memset(maxn,-1,sizeof(maxn));
	cin >> n >> m;
	for (int i = 0;i < m;i++){
		scanf("%d%d",&a,&b);
		g[a].push_back(b);
	}
	for (int i = 1;i <= n;i++){
		ans = max(ans,l(i));
	}
	printf("%d",ans);
	return 0;
}

2024/8/12 15:29
加载中...