为什么CE???
查看原帖
为什么CE???
1385468
msh20204401楼主2025/1/12 11:06
#include<bits/stdc++.h>
using namespace std;
int mx=0;
int main(){
    int n,m;
    cin>>n>>m;
    vector<vector<int> > g(n),din(n);
    for(int i=1;i<=m;i++){
        int u,v;
        cin>>u>>v;
        u--,v--;
        g[u].push_back(v);
        din[v]++;
    }
    queue<int> q;
    vector<int> dp(n);
    for(int i=0;i<n;i++)
        if(!din[i])q.push(i);
        while(q.size()){
            int x=q.front();
            q.pop();
            
            for(auto v:g[x]){
                din[v]--;
                dp[v]=max(dp[v],dp[x])+1;
                if(!din[v])q.push(v);
            }
        }
    cout<<*max_element(dp.begin(),dp.end())<<endl;
    return 0;
}

我的这个也是,看着挺正确,都十几次CE了,大佬们指点一下,哪里错了???

2025/1/12 11:06
加载中...