报错"ld返回1",我不理解!
查看原帖
报错"ld返回1",我不理解!
893933
zhaoziyue2022楼主2023/7/7 11:29

求改!

#include<bits/stdc++.h>
using namespace std;
int n,m,ind[100086],outd[100086],x,y,f[100086],ans;
int a[100086][100086];
queue <int> q;
const int mod=80112002;
int main(){
    cin>>n>>m;
    for(int i=1;i<=m;i++){
        cin>>x>>y;
        a[x][y]=1;
        outd[x]++;
        ind[y]++;
    }
    for(int i=1;i<=n;i++){
        if(ind[i]==0){
            f[i]=1;
            q.push(i);
        }
    }
    while(!q.empty()){
        x=q.front();
        q.pop();
        for(int i=1;i<=n;i++){
            if(a[x][i]==0){
                continue;
            }
            f[i]+=f[x];
            ind[i]--;
            if(ind[i]==0){
                if(outd[i]==0){
                    ans+=f[i];
                    ans%=mod;
                }
                q.push(i);
            }
        }
    }
    cout<<ans;
    return 0;
}
2023/7/7 11:29
加载中...