首页 > 其他分享 >杂物

杂物

时间:2024-02-04 16:13:31浏览次数:14  
标签:idx int 杂物 long ne add topSort

#include <bits/stdc++.h>
#define CLOSE ios::sync_with_stdio(false);cin.tie(0);cout.tie(0)
#define endl "\n"
typedef long long LL;
const int N = 1e4 + 5, M = 2e6 + 100, mod = 1e9 + 7;
using namespace std;
int h[N], e[M], ne[M], idx, din[N], dp[N], a[N];
int n, m;
void add(int x, int y){
    e[idx] = y, ne[idx] = h[x], h[x] = idx ++;
}
void topSort(){
    queue<int> q;
    for(int i = 1; i <= n; i ++){
        if(din[i] == 0){
            q.push(i);
            dp[i] = a[i];
        }
    }
    while(!q.empty()){
        int t = q.front();
        q.pop();
        for(int i = h[t]; i != -1; i = ne[i]){
            int j = e[i];
            din[j] --;
            dp[j] = max(dp[j], dp[t] + a[j]);
            if(!din[j]){
                q.push(j);
            }
        }
    }
}
int main()
{
    memset(h, -1, sizeof h);
    cin >> n;
    for(int i = 1; i <= n; i ++){
        int x, w;
        cin >> x >> w;
        a[x] = w;
        int y;
        while(cin >> y && y){
            add(x, y);
            din[y] ++;
        }
    }
    topSort();
    int ans = 0;
    for(int i = 1; i <= n; i ++){
        ans = max(ans, dp[i]);
    }
    cout << ans;
    return 0;
}

标签:idx,int,杂物,long,ne,add,topSort
From: https://www.cnblogs.com/acwhr/p/18006423

相关文章

  • 【AI产品】一键去除杂物,Photo Eraser助你拍出美丽照片
    欢迎来到《AI产品》专栏,本专栏面向所有热爱人工智能技术的朋友、同学。在本专栏中,会多多分享给大家不同种类的且新奇有趣的AI产品,对产品中的核心技术进行深度剖析。文章底部......
  • 杂物间
    吕的青藤OJ题单:https://wwi.lanzoup.com/io1Pf0dhg98j这个OJ要申请账号,但是我申请了:登陆用户名:SoN3ri密码:pepperpepper1.son3ri......
  • 杂物箱 | Doc2Vec代码实现
    1分词importgensimimportreimportjiebaimportpandasaspdimportosfromgensim.models.doc2vecimportDoc2Vecdefcut_txt(text):text=re.sub(u'[^\u......