社区讨论

为什么CE???

AT_dp_gLongest Path参与者 2已保存回复 4

讨论操作

快速查看讨论及其快照的属性,并进行相关操作。

当前回复
4 条
当前快照
1 份
快照标识符
@m5t1bbff
此快照首次捕获于
2025/01/12 11:07
去年
此快照最后确认于
2025/11/04 11:44
4 个月前
查看原帖
CPP
#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了,大佬们指点一下,哪里错了???

回复

4 条回复,欢迎继续交流。

正在加载回复...