E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
左偏树(可并堆)
bzoj2809 apio2012 派遣
直观思想是要找到以每个点为根的子树里,最多能有多少个节点薪水和不大于M,也就是要去把最小的点统计起来,乍一眼像是一个维护最小薪水的
可并堆
,但是考虑到必须要有出堆操作来使时间更优,而出堆元素越大越好,综上
sjwk2017
·
2020-07-05 12:32
OI
[洛谷P3261] [JLOI2015]城池攻占
Part1理解题目至少我一开始不知道为什么要用
左偏树
,甚至我看题解一开始也都没弄懂,所以先把题目弄清楚。首先我们由题可以知道,这要求我们从建好的树的叶子节点开始往上
eternal风度
·
2020-07-05 08:55
BZOJ4524: [Cqoi2016]伪光滑数
可持久化
可并堆
QWQ传送门:http://blog.csdn.net/liuguangzhe1999/article/details/51132255听说这位大神AK了省选%%%主要思想就是讲一个
可并堆
当做一个状态然后转递给后面的状态
Hillan_
·
2020-07-04 22:07
可持久化可并堆
可并堆
BZOJ4524 [CQOI2016]伪光滑数 可持久化
可并堆
+DP
很有意思的一个题考场上我竟然乱搞出这种奇怪的以前想都没想过的算法(以前根本想不到函数式数据结构还可以拿来DP)其实写这个题解我也是不想这个有趣的方法就这么绝迹了呢。。。因为是求第K大所以不难想到用堆的K路归并问题,对答案的种类我们分类,最直观的分类就是按最大因子和分解项数来分类即用f[i,j]表示最大质因子为p[i],用了j项分解数的数的集合,因为要求数的不重不漏,我们力求让所有的数都由互素的小数
liuguangzhe1999
·
2020-07-04 22:36
可持久化可并堆
DP
heheda练数据结构
最近看了以下知识点:线段树套线段树线段树套平衡树准备学习:替罪羊树块状链表复习:树链剖分树状数组套线段树一些高级的线段树可持久化tire
可并堆
bzoj2957楼房重建给定第一象限的n个楼房,询问从原点能看到多少个楼房
heheda_is_an_OIer
·
2020-07-04 17:14
总结
【APIO2016】Fireworks【动态规划+折线优化+
可并堆
】
题目大意:给出一棵树,边有边权,可以花费1的代价把一条边的权值加1或者1,不能减到负的。要让根到所有叶子的边权和都相等。问最小代价。n#definelllonglongusingnamespacestd;intgetint(){inti=0,f=1;charc;for(c=getchar();(c!='-')&&(c'9');c=getchar());if(c=='-')c=getchar(),f
Neo__Z
·
2020-07-04 12:49
树形dp
动态规划优化
可并堆
BZOJ 4585 [Apio2016]烟火表演
可并堆
#include#include#include#defineN300005usingnamespacestd;typedeflonglongLL;structNode{Node*ch[2];intdpt;LLval;Node(){}Node(LL);void*operatornew(size_t){staticNode*mempool,*C;if(mempool==C)mempool=(C=ne
YihAN_Z
·
2020-07-04 09:05
可并堆
NKOJ 3616(CQOI 2016) 伪光滑数(暴力堆/可持久化
可并堆
+dp)
>P3616【CQOI2016Day2】伪光滑数问题描述若一个大于1的整数M的质因数分解有k项,其最大的质因子为ak,并且满足akk≤N,ak#include#include#include#definellunsignedlonglongusingnamespacestd;structnode{llx,v,p;};booloperatorQ;lln,k;llA[32]={1,2,3,5,7,11
Mogician_Evian
·
2020-07-04 07:31
堆与可并堆
动态规划
[堆 折线] UOJ#205 & BZOJ4585 【APIO2016】Fireworks
大概是一个子树中的fx是一个单峰函数,转折点用
可并堆
维护具体看这里#include#include#includeusingnamespacestd;typedeflonglongll;constintN
LowestJN
·
2020-07-04 05:18
堆
「JLOI 2015」城池攻占「
左偏树
」
对每个点维护一个
左偏树
(小根
可并堆
),一开始把骑士插入然后dfs,从下往上把骑士送上去每次在取
左偏树
的堆顶找死亡骑士,不断pop,直到堆顶骑士不会死亡为止然后最后在根上打修改懒标记(加或乘)#include
_Gion
·
2020-07-04 04:03
左偏树
保序回归问题在序列上的特殊做法
但是L1L_1L1的均值是中位数,还得写
可并堆
,这种情况真的罕见。再来一道例题:2020Petrozavods
Freopen
·
2020-07-04 01:19
【BZOJ】1455 罗马游戏
左偏树
题目传送门这题和洛谷上的
左偏树
模板的解题思路是一模一样的,所以只要贴上
左偏树
的模板就好了。
Chester_King
·
2020-07-02 10:58
BZOJ
左偏树
水题
BZOJ 1455 罗马游戏 [右偏树(误)][
左偏树
]
下面的代码是与
左偏树
完全相反的右偏树写法大误其实左右互掉后没什么影响,就是把左当作右,把右当作左。(不就是一回事吗。。。。)速度好像快一点?误。。
lemonoil
·
2020-07-02 07:31
左偏树
BZOJ
BZOJ 1455 罗马游戏
左偏树
题目大意:给定n个点,每个点有一个权值,提供两种操作:1.将两个点所在集合合并2.将一个点所在集合的最小的点删除并输出权值很裸的
可并堆
n#include#include#include#defineM1001001usingnamespacestd
PoPoQQQ
·
2020-07-01 12:54
BZOJ
可并堆
BZOJ 1455: 罗马游戏
左偏树
or pb_ds
这道题看到支持合并操作就知道是启发式合并,就去学了一下
左偏树
,
左偏树
,顾名思义就是树是向左偏的,实质上是一个堆,我们只需对一个节点维护一个权值,这个权值等于其右儿子的权值加一,一旦发现左儿子的该权值比右儿子小就交换左右儿子
LZJ209
·
2020-07-01 11:31
启发式合并
STL
BZOJ
启发式合并
STL
[BZOJ1455]罗马游戏
左偏树
+并查集
左偏树
用来合并堆,并查集用来维护所在堆的堆顶编号。然而有的时候要删除堆顶x,然后对并查集进行这样的操作:fa[x]:=merge(x^.l,x^.r);fa[fa[x]]:=fa[x]。
DOFYPXY
·
2020-07-01 08:01
优先队列
数据结构
并查集
[BZOJ1455]罗马游戏(
可并堆
)
题目描述传送门题解
左偏树
裸题splay启发式合并是不是太慢了?注意!
Clove_unique
·
2020-07-01 08:04
题解
可并堆
【BZOJ1455】罗马游戏(
左偏树
)
题解
左偏树
模板题。
小蒟蒻yyb
·
2020-07-01 03:37
BZOJ
【bzoj4003】【JLOI2015】【城池攻占】【
可并堆
】
题解:用一个
可并堆
来维护骑士的信息.每次自低向上合并.先把子节点信息合并到父节点,在父节点统计死亡骑士的个数.统计的时候不断取最小值直到不再死亡.对于修改,分乘法和加法打标记
sunshinezff
·
2020-06-26 16:35
可并堆
Trie树合并
因为省选\(Day2T2\)来学习\(01\trie\)合并……首先和线段树合并还有
左偏树
的\(merge\)一样的,就是一个\(merge\)函数inlineintmerge(intx,inty){if
言似缥缈
·
2020-06-25 23:00
HDU 1512 Monkey King(
左偏树
)
题解:
左偏树
。AC代码:#include#include#includeusingnames
LzyRapX
·
2020-06-24 04:40
ACM_左偏树
HDUOJ
ACM算法列表
ACM所有算法数据结构栈,队列,链表哈希表,哈希数组堆,优先队列双端队列
可并堆
左偏堆二叉查找树Treap伸展树并查集集合计数问题二分图的识别平衡二叉树二叉排序树线段树一维线段树二维线段树树状数组一维树状数组
ConwayTian
·
2020-06-22 07:43
文摘
「JLOI2015」城池攻占
可并堆
传送门分析如果直接暴力枚举的话肯定会超时我们可以从下往上遍历,维护一个小根堆每次到达一个节点把战败的骑士扔出去剩下的再继续向上合并,注意要维护一下其实的战斗力可以像线段树那样用一个lazy标记代码#includeusingnamespacestd;constintmaxn=300005;typedeflonglongll;llhead[maxn],tot=1;structasd{llfrom,to
liuchanglc
·
2020-05-21 10:00
JLOI2015城池攻占
左偏树
分析什么是
左偏树
先来考虑暴力做法,对于每个骑士都做一遍DFS,时间复杂度\(O(NM)\),显然会T。
An_Fly
·
2020-05-21 08:00
「Luogu P3273 [SCOI2011]棘手的操作」
题目大意给出一些点和一些操作,资瓷链接两点,某个点所在的联通块都加上一个数,某个点加上一个数,全部加上一个数,查询单点的值,查询某个点所在的连通块中的最大值,查询所有值中的最大值.分析
可并堆
裸题.因为连边这个东西很难处理
Sxy_Limit
·
2020-05-04 11:00
LUOGU 3377
左偏树
Description如题,一开始有个小根堆,每个堆包含且仅包含一个数。接下来需要支持两种操作:操作1将第x个数和第y个数所在的小根堆合并(若第x或第y个数已经被删除或第x和第y个数在用一个堆内,则无视此操作)操作2输出第x个数所在的堆最小数,并将其删除(若第x个数已经被删除,则输出-1并无视删除操作)InputFormat第一行包含两个正整数,分别表示一开始小根堆的个数和接下来操作的个数。第二行
苏子旃
·
2020-03-23 01:34
可并堆
之——
左偏树
其实pb_ds里面内置了
可并堆
相信大多数人都知道c++提供了强大的STL,并且STL里面有一个很好用的priority_queue可以用来充当堆的功能。
菜鸡mk
·
2020-02-28 17:00
ACM模板_axiomofchoice
动态规划多重背包最长不下降子序列LIS计算几何向量(结构体)平面集合基本操作二维凸包旋转卡壳最大空矩形|扫描法平面最近点对|分治最小圆覆盖|随机增量法三维向量(结构体)三维凸包几何杂项数据结构ST表单调队列树状数组线段树并查集
左偏树
珂朵莉树
axiomofchoice
·
2020-02-17 20:00
左偏树
学习笔记
今天刚刚学习了
左偏树
,这里记录一下,加深理解首先,我们用
左偏树
可以做到\(O(log_n)\)来合并两个堆,\(O(log_n)\)来删除等一些\(O(log_n)\)的操作设\(dis\)为这个节点到它的子树中最近的一个叶子的距离
dz_ice
·
2020-02-06 20:00
[题解] [JSOI2011] 任务调度
题解题面
左偏树
练习题吧改权值的操作就是把这个点扯出来,左右儿子合并后接到这个点的父亲上去,然后再把这个点重新塞进
左偏树
里就行了至于这部操作为什么不要更新dis,可能是因为dis最多只会变1,左偏的性质还是存在吧
ztlztl
·
2020-02-04 11:00
题解-------P4053 [JSOI2007]建筑抢修
传送门贪心+
左偏树
贪心思路:先修快炸的楼所以我们可以按照$T2$从大到小做一遍排序,然后从$1\cdotsn$一个一个去修,如果这栋楼不能修(也就是当前时间已经超过$T2_{i}$),那我们就不选之前已经修的楼中的一个耗时最长的楼
ASTiKi
·
2020-02-02 22:00
堆(
左偏树
)
左偏树
定义一个节点的高度为到叶子节点的最短距离。一棵
左偏树
需要满足几个性质:\(1.\)它是一个堆。\(2.\)一个节点的左儿子的高度\(\ge\)右儿子的高度。
Shiina_Mashiro
·
2020-01-07 22:00
待学
*树套树线段树套线段树线段树套平衡树*平衡树套线段树6.
可并堆
左偏树
*配对堆KDtree,四分树1.4
redegg
·
2019-12-11 19:00
NOIP提高组/CSP-S复赛需掌握的算法
3、树①遍历②二叉树③二叉排序树(查找、生成、删除)④堆(二叉堆、
左偏树
、堆排序)⑤Trie树4、图(图论建模)①最小生成树②最短路径③计算图的传递闭包④连通分量(其中要掌握并查集技术)强连通分量tarjin⑤
wased
·
2019-11-08 17:00
左偏树
bzoj1455罗马游戏Description罗马皇帝很喜欢玩杀人游戏。他的军队里面有n个人,每个人都是一个独立的团。最近举行了一次平面几何测试,每个人都得到了一个分数。皇帝很喜欢平面几何,他对那些得分很低的人嗤之以鼻。他决定玩这样一个游戏。它可以发两种命令:1.Merger(i,j)。把i所在的团和j所在的团合并成一个团。如果i,j有一个人是死人,那么就忽略该命令。2.Kill(i)。把i所在的
Gitfan
·
2019-11-01 18:58
[bzoj4003]城市攻占
简单处理即可(然而这样是错的,因为他只保证了骑士的攻击力可以存,并没有保证这个一次函数的系数可以存)(其实还可以用科学记数法即pair来存即可,只要注意精度&常数)正解是模拟,维护当前子树中骑士血量的
左偏树
PYWBKTDA
·
2019-10-07 06:00
完全k叉树(CCPC-Wannafly & Comet OJ 夏季欢乐赛(2019) A)
顾名思义,攀树协会会经常组织大家攀爬一些树,比如李超树,
左偏树
,带花树,智慧树等等。经过社团组织的一番培训后,同学们已经学会了如何在树上的相邻结点中来回爬动。
Baiyi_destroyer
·
2019-07-29 08:54
水题集
左偏树
入门
\(\rm{0x01}\)关于
左偏树
主要是整理自己想出来的几个梗\(\mathcal{To~be~(left)~or~not~to~be~(left),this~is~a~question}\)左偏还是右偏
Flower&)
·
2019-01-27 15:00
配对堆优化Dijkstra算法小记
3、属于
可并堆
,因此对于集合合并维护最值的问题很实用。
Dilthey
·
2018-11-20 23:00
poj2449 Remmarguts' Date(第k短路问题)(A*+spfa/dijkstra)
berrykanry/article/details/78345894(通俗易懂解释好评)https://www.cnblogs.com/yyf0309/p/8438849.html(可惜看不懂可持久化
可并堆
Code92007
·
2018-10-18 18:34
最短路
poj2449 Remmarguts' Date(第k短路问题)(A*+spfa/dijkstra)
berrykanry/article/details/78345894(通俗易懂解释好评)https://www.cnblogs.com/yyf0309/p/8438849.html(可惜看不懂可持久化
可并堆
Code92007
·
2018-10-18 18:34
A星
dijkstra
最短路
各种姿势过【模板】单源最短路径(标准版)
洛谷P4779板子,堆优化+标记数组优化spfa魔改迪杰斯特拉堆优化+判断zkw线段树优化线段树优化树状数组优化
左偏树
优化,
左偏树
+回收节点优化小根堆优化加一个zkw线段树优化的板子---虽然我看不懂=
RevolIA
·
2018-10-07 22:44
模板类(什么
这也是模板)
左偏树
——
可并堆
左偏树
简介:
左偏树
中的一个节点,如果它的左子树或右子树为NULLNULL,则称它是一个外结点。在
左偏树
中,距离(distdist)为该点到最近外结点的距离。
Caristra
·
2018-08-20 18:11
数据结构
左偏树
(
可并堆
)
左偏树
其实是一种
可并堆
,它可以O(log2n)O(log2n)合并两个堆。那左偏?
ezoiLZH
·
2018-08-17 19:00
题解
bzoj - 3252 攻略 【思维 or
可并堆
】 好题
传送门题目:就是同时有k个人从一颗有n个节点的树的根节点出发,走过的点都可以累加到ans中,一个点只能被累加一次,问最大能累加多少.思路:其实最开始做这道题是用的倒着做的,然后dp了一下,现在学了这个就用这个再做做,实际上我们从叶子节点开始每次每个节点只加在价值最大的那个子节点上,然后加完了,从根节点开始一个个删掉,取前k大即可.ACCodeconstintmaxn=2e5+5;introot[m
Anxdada
·
2018-07-29 21:18
可并堆/左偏树
bzoj - 4003 城池攻占 【
可并堆
+ lazy标记】 好题!!!
传送门题目大意:小铭铭最近获得了一副新的桌游,游戏中需要用m个骑士攻占n个城池。这n个城池用1到n的整数表示。除1号城池外,城池i会受到另一座城池fi的管辖,其中fival[y])swap(x,y);pushdown(x);rs[x]=Un(rs[x],y);swap(ls[x],rs[x]);returnx;}voidpop(int&x){x=Un(ls[x],rs[x]);}inttop(in
Anxdada
·
2018-07-29 21:19
可并堆/左偏树
bzoj - 1455 【
可并堆
+ 并查集】 这一类的好题!!!
Description罗马皇帝很喜欢玩杀人游戏。他的军队里面有n个人,每个人都是一个独立的团。最近举行了一次平面几何测试,每个人都得到了一个分数。皇帝很喜欢平面几何,他对那些得分很低的人嗤之以鼻。他决定玩这样一个游戏。它可以发两种命令:1.Merger(i,j)。把i所在的团和j所在的团合并成一个团。如果i,j有一个人是死人,那么就忽略该命令。2.Kill(i)。把i所在的团里面得分最低的人杀死。
Anxdada
·
2018-07-25 23:16
可并堆/左偏树
可并堆
学习 (兼模板)
(rs[x],y);swap(ls[x],rs[x]);returnx;}voidpop(int&x){x=Un(ls[x],rs[x]);}}heap;//取top直接取对应的val值即可讲讲为啥用
左偏树
Anxdada
·
2018-07-25 23:24
可并堆/左偏树
学习
左偏树
有感//2018/7/1
今日,学习了传说中的
左偏树
(虽然感觉学的还是假的)学习地址:https://www.luogu.org/blog/IAmHellWord/solution-p3377附加丑代码一段#includeusingnamespacestd
AIRNO2
·
2018-07-01 10:30
算法
【LOJ】apio2016烟火表演-
可并堆
&凸包
讲解详见ppt%%%%代码#include#include#include#includeusingnamespacestd;typedeflonglongll;constintN=3e5+10;constintM=2e6+10;intn,m,cnt,d[N],f[N],rt[N];lllen[N],sum;structP{;intlc,rc;lldis,v;}q[M];charcc;inline
ccosi
·
2018-06-03 13:13
可并堆(左偏树)
上一页
1
2
3
4
5
6
7
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他