可并堆
Neo__Z
这个作者很懒,什么都没留下…
展开
-
bzoj1455 罗马游戏【并查集+可并堆】
解题思路:用并查集维护左偏树(可并堆)中每个节点的根节点即可。#include<bits/stdc++.h> #define ll long long using namespace std;int getint() { int i=0,f=1;char c; for(c=getchar();(c<'0'||c>'9')&&c!='-';c=getchar()); if(c=原创 2017-12-18 18:14:08 · 218 阅读 · 0 评论 -
UOJ#205. 【APIO2016】Fireworks【动态规划+折线优化+可并堆】
题目大意: 给出一棵树,边有边权,可以花费1的代价把一条边的权值加1或者1,不能减到负的。 要让根到所有叶子的边权和都相等。问最小代价。 n&amp;lt;=600000 解题思路: 设 fx(i)fx(i)f_x(i) 表示 xxx 的子树中的叶子到 xxx 距离全部搞成 iii 的最小代价。 设 gx(i)gx(i)g_x(i)表示 xxx 的子树中的叶子到 faxfaxf...原创 2018-05-18 11:32:10 · 335 阅读 · 0 评论