编译失败,但是本地没问题
查看原帖
编译失败,但是本地没问题
943468
lizicheng3042楼主2023/6/9 09:39
#include<cstdio>
#include<queue>
using namespace std;
int f,t,n,k,s[5005],next[500005],to[500005],w[5005],way[5005],qrwew34eq[5005];
long long ans;
void add(int d,int dd,int ti)
{
	next[ti]=s[d];
	s[d]=ti;
	to[ti]=dd;
	w[dd]++;
	qrwew34eq[d]++;
}
queue<int>fin;
int main()
{
	scanf("%d%d",&n,&k);
	for(int a=1;a<=k;a++)
	{
		scanf("%d%d",&f,&t);
		add(t,f,a);
	}
	for(int a=1;a<=n;a++)
	{
		if(!w[a])
		{
			fin.push(a);
		way[a]=1;
		} 
	}
	while(!fin.empty())
	{
		int y=fin.front();
		fin.pop();
		for(int a=s[y];a;a=next[a])
		{
			way[to[a]]=(way[to[a]]+way[y])%80112002;
			w[to[a]]--;
			if(!w[to[a]]) fin.push(to[a]);
		}
	}
	for(int a=1;a<=n;a++)
	{
		if(!qrwew34eq[a]) ans=(ans+way[a])%80112002;
	}
	printf("%lld",ans);
	return 0;
}
2023/6/9 09:39
加载中...