题目分析:

yy一下就知道了,合并用可并堆少个log。

代码:

 #include<bits/stdc++.h>
using namespace std; const int maxn = ; int n,m;
int b[maxn],c[maxn],l[maxn],sz[maxn];
long long tot[maxn];
int dis[maxn],val[maxn],ch[maxn][],pts[maxn];
vector <int> g[maxn];
long long ans = ; int merge(int r1,int r2){
if(r1 == ) return r2; if(r2 == ) return r1;
if(val[r1] > val[r2]){
ch[r1][] = merge(ch[r1][],r2);
if(dis[ch[r1][]] < dis[ch[r1][]]) swap(ch[r1][],ch[r1][]);
if(ch[r1][]) dis[r1] = dis[ch[r1][]] + ;
else dis[r1] = ;
return r1;
}else{
ch[r2][] = merge(r1,ch[r2][]);
if(dis[ch[r2][]] < dis[ch[r2][]]) swap(ch[r2][],ch[r2][]);
if(ch[r2][]) dis[r2] = dis[ch[r2][]] + ;
else dis[r2] = ;
return r2;
}
} void read(){
scanf("%d%d",&n,&m);
for(int i=;i<=n;i++) scanf("%d%d%d",&b[i],&c[i],&l[i]);
for(int i=;i<=n;i++){g[b[i]].push_back(i);}
} void dfs(int now){
for(int i=;i<g[now].size();i++){
dfs(g[now][i]);
sz[now] += sz[g[now][i]];
tot[now] += tot[g[now][i]];
}
sz[now]++; tot[now] += c[now];
for(int i=;i<g[now].size();i++)pts[now]=merge(pts[now],pts[g[now][i]]);
while(tot[now] > m){
tot[now] -= val[pts[now]];sz[now]--;
pts[now] = merge(ch[pts[now]][],ch[pts[now]][]);
}
ans = max(ans,1ll*l[now]*sz[now]);
} void work(){
for(int i=;i<=n;i++) pts[i] = i,val[i] = c[i];
dfs(g[][]);
printf("%lld",ans);
} int main(){
read();
work();
return ;
}

BZOJ2809 dispatching 【可并堆】的更多相关文章

  1. 【BZOJ2809】[Apio2012]dispatching 可并堆

    [BZOJ2809][Apio2012]dispatching Description 在一个忍者的帮派里,一些忍者们被选中派遣给顾客,然后依据自己的工作获取报偿.在这个帮派里,有一名忍者被称之为 M ...

  2. bzoj1455: 罗马游戏 + bzoj2809: Dispatching(可并堆)

    昨天看了可并堆是什么,写的是左偏树 大概就是一棵树 1.有左偏性质,即当前根到左叶子节点距离比到右叶子节点距离大 2.有堆性质,堆顶关键字比子树关键字小 合并两个堆的时候,关键字大的插入到关键字小的那 ...

  3. BZOJ2809 [Apio2012]dispatching 可并堆

    欢迎访问~原文出处——博客园-zhouzhendong 去博客园看该题解 题目传送门 - BZOJ2809 题意概括 n个点组成一棵树,每个点都有一个领导力和费用,可以让一个点当领导,然后在这个点的子 ...

  4. bzoj 2809: [Apio2012]dispatching -- 可并堆

    2809: [Apio2012]dispatching Time Limit: 10 Sec  Memory Limit: 128 MB Description 在一个忍者的帮派里,一些忍者们被选中派 ...

  5. [BZOJ2809]dispatching

    Description 在一个忍者的帮派里,一些忍者们被选中派遣给顾客,然后依据自己的工作获取报偿.在这个帮派里,有一名忍者被称之为 Master.除了 Master以外,每名忍者都有且仅有一个上级. ...

  6. BZOJ 2809 [Apio2012]dispatching(斜堆+树形DP)

    [题目链接] http://www.lydsy.com/JudgeOnline/problem.php?id=2809 [题目大意] 给出一棵树,求出每个点有个权值,和一个乘算值,请选取一棵子树, 并 ...

  7. BZOJ2809 dispatching(左偏树)

    在一个忍者的帮派里,一些忍者们被选中派遣给顾客,然后依据自己的工作获取报偿.在这个帮派里,有一名忍者被称之为 Master.除了 Master以外,每名忍者都有且仅有一个上级.为保密,同时增强忍者们的 ...

  8. 2809: [Apio2012]dispatching 可并堆 左偏树

    https://www.lydsy.com/JudgeOnline/problem.php?id=2809 板子题wa了一下因为输出ans没有lld #include<iostream> ...

  9. 【bzoj2809】[Apio2012]dispatching 贪心+可并堆

    题目描述 在一个忍者的帮派里,一些忍者们被选中派遣给顾客,然后依据自己的工作获取报偿.在这个帮派里,有一名忍者被称之为 Master.除了 Master以外,每名忍者都有且仅有一个上级.为保密,同时增 ...

随机推荐

  1. list tuple

    ----------------------------善始者善终,笑到最后的,才是最good的.--------------------------------------------------- ...

  2. App Inspector-iOS真机功能详解

    前言: App Inspector:浏览器端的移动设备 UI 查看器,使用树状态结构查看 UI 布局,自动生成 XPaths.官网:https://macacajs.github.io/app-ins ...

  3. 用python表白了!!!

    用python 画一颗心,代码:   import numpy as np import matplotlib.pyplot as plt x = np.linspace(-8 , 8, 1024) ...

  4. 关于R语言中dnorm,pnorm,qnorm,rnorm的用法

    dnorm,pnorm,qnorm,rnorm的表达式: 其中x和q是由数值型变量构成的向量,p是由概率构成的向量,n是随机产生的个数 mean是要计算正态分布的均值,缺省值为0,sd是计算正态分布的 ...

  5. PHP开发web应用安全总结

    XSS跨站脚本 概念:恶意攻击者往Web页面里插入恶意html代码,当用户浏览该页之时,嵌入其中Web里面的html代码会被执行,从而达到恶意用户的特殊目的. 危害: 盗取用户COOKIE信息. 跳转 ...

  6. selenium处理alert弹出框

    import time from selenium import webdriver driver =webdriver.Chrome(r"D:\工具包\chromedriver.exe&q ...

  7. Codeforces Round #546 (Div. 2)

    http://codeforces.com/contest/1136 A #include <bits/stdc++.h> using namespace std; ; int N, K; ...

  8. pip ipython启动错误 Fatal error in launcher: Unable to create process using

    完整的错误提示: C:\Users\yyy>ipython3Fatal error in launcher: Unable to create process using '"c:\u ...

  9. Vue+iview实现添加删除类

    <style> .tab-warp{ border-bottom: solid 1px #e0e0e0; overflow: hidden; margin-top: 30px; posit ...

  10. [转帖]web安全:通俗易懂,以实例讲述破解网站的原理及如何进行防护!如何让网站变得更安全。

    web安全:通俗易懂,以实例讲述破解网站的原理及如何进行防护!如何让网站变得更安全. https://www.cnblogs.com/1996V/p/7458377.html 感谢原作者写的内容 安全 ...