0
已解决
黄子扬
初级天翼
初级天翼
#include<iostream>
#include<cstring>
#include<vector>
#include<queue>
#define MAXN 500005
#define MOD 80112002
using namespace std;
int n,m,ans;
vector<int>p[MAXN];
queue<int>q;
int f[MAXN],ind[MAXN],outd[MAXN];
int main()
{
cin>>n>>m;
for(int i=1;i<=m;i++)
{
int x,y;
cin>>x>>y;
outd[x]++;
ind[y]++;
p[x].push_back(y);
}
memset(f,0,sizeof(f));
for(int i=1;i<=n;i++)
if(ind[i]==0)
{
q.push(i);
f[i]=1;
}
while(!q.empty())
{
int x=q.front();
q.pop();
for(int i=0,sz=p[x].size();i<sz;i++)
{
int y=p[x][i];
f[y]=(f[x]+f[y])&MOD;
ind[y]--;
if(ind[y]==0)
q.push(y);
}
}
for(int i=1;i<=n;i++)
if(outd[i]=0)
ans=(ans+f[i])%MOD;
cout<<ans<<endl;
return 0;
}
QwQ
黄子扬在2020-08-05 15:24:54追加了内容
是洛谷,打错了
黄子扬在2020-08-06 15:26:37追加了内容
两天了,没人来
黄子扬在2020-08-07 13:31:38追加了内容
WAWAWA