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
可并堆
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 罗马游戏 左偏树
题目大意:给定n个点,每个点有一个权值,提供两种操作:1.将两个点所在集合合并2.将一个点所在集合的最小的点删除并输出权值很裸的
可并堆
n#include#include#include#defineM1001001usingnamespacestd
PoPoQQQ
·
2020-07-01 12:54
BZOJ
可并堆
[BZOJ1455]罗马游戏(
可并堆
)
题目描述传送门题解左偏树裸题splay启发式合并是不是太慢了?注意!如果有一个人x被杀掉了,那这个点就没有用了,这个点不能留在这一棵左偏树里但是必须将x的代表元素改成新的树根,因为在原树里很多点的代表元素是指向x的,如果不修改的话就相当于把这些点指向了一个空节点合并两棵之前没有交集的子树的时候就可以直接将把两个根的代表元素指向新的根,这样就保证了所有的点都指向了新根代码#include#inclu
Clove_unique
·
2020-07-01 08:04
题解
可并堆
【bzoj4003】【JLOI2015】【城池攻占】【
可并堆
】
题解:用一个
可并堆
来维护骑士的信息.每次自低向上合并.先把子节点信息合并到父节点,在父节点统计死亡骑士的个数.统计的时候不断取最小值直到不再死亡.对于修改,分乘法和加法打标记
sunshinezff
·
2020-06-26 16:35
可并堆
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
「Luogu P3273 [SCOI2011]棘手的操作」
题目大意给出一些点和一些操作,资瓷链接两点,某个点所在的联通块都加上一个数,某个点加上一个数,全部加上一个数,查询单点的值,查询某个点所在的连通块中的最大值,查询所有值中的最大值.分析
可并堆
裸题.因为连边这个东西很难处理
Sxy_Limit
·
2020-05-04 11:00
可并堆
之——左偏树
其实pb_ds里面内置了
可并堆
相信大多数人都知道c++提供了强大的STL,并且STL里面有一个很好用的priority_queue可以用来充当堆的功能。
菜鸡mk
·
2020-02-28 17:00
待学
*树套树线段树套线段树线段树套平衡树*平衡树套线段树6.
可并堆
左偏树*配对堆KDtree,四分树1.4
redegg
·
2019-12-11 19: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
最短路
左偏树——
可并堆
左偏树简介:左偏树中的一个节点,如果它的左子树或右子树为NULLNULL,则称它是一个外结点。在左偏树中,距离(distdist)为该点到最近外结点的距离。堆性质——在非叶节点中满足val(x)≥val(lson),val(x)≥val(rson)val(x)≥val(lson),val(x)≥val(rson)(大根堆)左偏性质——dist(lson)≥dist(rson)dist(lson)≥
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
可并堆/左偏树
可并堆
学习 (兼模板)
先存板子:introot[maxn];//这个点维护的堆实际编号.structLtree{intls[maxnval[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]);}}heap;//取top直接取对应的val值即可讲讲为啥用左偏树.用这个主
Anxdada
·
2018-07-25 23:24
可并堆/左偏树
【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
可并堆(左偏树)
【凸包维护-
可并堆
】LGP3642[APIO2016]烟火表演
【题目】原题地址题目大意:给你一棵带边权的有根树,你可以任意修改树的边权,问最少修改总和为多少的边权,能使得根节点到所有叶子节点的距离相同。【题目分析】暴力思考以后发现就是一个凸包合并之类的,但是这个合并很耐人寻味。【解题思路】APIO的题真是太妙了啊!首先我们设f(i,x)为点i在它所有叶子节点深度为x时的最小代价,我们可以发现这是一个下凸函数,而且是一次的,而且相邻两端斜率变化为1.显然在斜率
Dream_Lolita
·
2018-05-05 23:20
其他-凸包
【学习笔记】差分约束系统+
可并堆
这两个东西没什么关系,纯属凑篇幅差分约束系统差分约束系统就是给出一些形如x-yij−>i的有向边,边权为a[k]a[k],求x[n−1]−x[0]x[n−1]−x[0]的最大值就是求00到n−1n−1的最短路。当然,如果求最小值呢?看下面啦:关于建图:如果给出的不等式有”=”,又该如何解决呢?很明显,首先需要关注最后的问题是什么,如果需要求的是两个变量差的最大值,那么需要将所有不等式转变成”=”,
Dream_Lolita
·
2018-01-04 21:54
学习知识up
学习笔记
【配对堆】
③属于
可并堆
,因此对于集合合并维护最值的问题很实用。④速度快于一般的堆结构(左偏树,斜堆,随机堆…
大米饼
·
2017-10-14 00:00
noip前计划
以及有一些时间安排可能不够合理,以后还需调整9.23~9.29dp概率,期望背包树形数位(记忆化搜索)状压区间,序列9.30~10.5数据结构链表栈队列堆(
可并堆
)并查集(按秩)St表(和树相结合)hash
五彩蒟蒻DDD
·
2017-09-22 16:13
几种常见树形数据结构小结
最近新学习了很多厉害的数据结构,在大佬们的熏陶之下,也感悟了很多,对大佬们的实力也有了更加深厚的了解(先膜一番orz,换个姿势zto,再来一次owz)左偏树左偏树又名
可并堆
,多被用来对一些需要合并的一个集合体进行操作
Y_sofun
·
2017-07-13 20:02
左偏树的特点及其应用-黄源河
2.1.2
可并堆
的定义
可并堆
(MergeableHeap)也是一种抽象数据类型,它除了支持优先队列的三个基本操作(Insert,Minimum,Delete-Min),还支持一个额外的操作——合并操作:
Gitfan
·
2017-04-20 00:05
左偏树/斜堆——
可并堆
详解
所谓
可并堆
,顾名思义,就是可以合并的堆。最常用的堆应该大家都知道,优先队列二叉堆,是吧可是如果要求把两个堆合并,要怎么做?一个个数pop提取出来然后再重新构造一个堆?
Fop_zz
·
2017-03-02 13:45
数据结构
UOJ 205 [APIO2016]Fireworks
可并堆
+凸包首先猜一个结论,这玩意儿的函数是下凸的,进一步再猜这玩意儿是一个连续的分段一次函数,来证明一发。
Endless_Way
·
2017-02-13 19:57
数据结构-堆
计算几何-凸包
[BZOJ2333][SCOI2011][
可并堆
]棘手的操作
题意有N个节点,标号从1到N,这N个节点一开始相互不连通。第i个节点的初始权值为a[i],接下来有如下一些操作:Uxy:加一条边,连接第x个节点和第y个节点A1xv:将第x个节点的权值增加vA2xv:将第x个节点所在的连通块的所有节点的权值都增加vA3v:将所有节点的权值都增加vF1x:输出第x个节点当前的权值F2x:输出第x个节点所在的连通块中,权值最大的节点的权值F3:输出所有节点中,权值最大
LowestJN
·
2017-02-07 12:58
堆
hdu 1512 Monkey King (
可并堆
)
MonkeyKingTimeLimit:10000/5000MS(Java/Others)MemoryLimit:65536/32768K(Java/Others)TotalSubmission(s):5405AcceptedSubmission(s):2326ProblemDescriptionOnceinaforest,therelivedNaggressivemonkeys.Atthebeg
clover_hxy
·
2017-01-09 09:46
可并堆
[BZOJ2333][SCOI2011]棘手的操作(
可并堆
||线段树+离线)
题目描述传送门题解对没错总会有一道题分到这个编号…233333第一眼想到线段树,处理生成树(重新编号)使在任何时间在同一个连通块里的点都在一个连续的区间,然后搞搞搞就可以了然而要是换成
可并堆
的话操作还真是棘手啊
Clove_unique
·
2017-01-07 15:39
题解
线段树
省选
可并堆
ACM 所有算法
转载自:http://blog.sina.com.cn/s/blog_adb6743801019h29.htmlACM所有算法数据结构栈,队列,链表哈希表,哈希数组堆,优先队列双端队列
可并堆
左偏堆二叉查找树
Tabris_
·
2016-10-24 22:16
关于第k短路的学习(可持久化
可并堆
) 例题:poj2449
原来做第k短路用的是A*,但是后来发现A*对于k特别大的时候不好用,就去学了一种更高级的算法学习资料:俞鼎力写的第k短路和堆的可持久化方法:对于图G,建立一个以终点t为起点的最短路径构成的最短路径树(就是反着跑一遍最短路,然后对于一个不为终点的点v,v到终点t的最短路径上(任选一条)v的后继结点为v的父亲,就形成了一棵树),然后对于所有点,定义其不在最短路径树上的出边的f值为:f[e]=l[e]+
L_0_Forever_LF
·
2016-09-08 22:34
POJ
板子
左偏树(可并堆)
ACM常用算法分类
数据结构栈,队列,链表•哈希表,哈希数组•堆,优先队列双端队列
可并堆
左偏堆•二叉查找树Treap伸展树•并查集集合计数问题二分图的识别•平衡二叉树•二叉排序树•线段树相关题目:http://blog.csdn.net
AC_Dreameng
·
2016-09-02 14:54
切磋琢磨
ACM_HDU刷题录
BZOJ2809——[Apio2012]dispatching
1、题目大意:给一棵树和M值,每个点有两个权值C和L,选x个点,这x个点的C值的和不能超过M,且这x个点如果都在某个子树内定义满意度为x*这个子树的根的L值2、分析:这是一道
可并堆
的题目,我们考虑每一个子树
qzh_1430586275
·
2016-05-18 08:00
左偏树
dispatching
bzoj
2809
APIO2012
BZOJ1455——罗马游戏
1、题目大意:维护一个数据结构,可以实现合并操作,还能询问最小值2、分析:这种问题当然是
可并堆
啦随便写了一个左偏树QAQ#include #include #include #include usingnamespacestd
qzh_1430586275
·
2016-05-17 08:00
左偏树
bzoj
罗马游戏
可并堆
1455
[BZOJ2809][Apio2012]dispatching(枚举&dfs序+主席树||
可并堆
||splay+启发式合并)
2°
可并堆
3°splay+启发式合并代码主席树#include #include #include #include usingnamespacestd; #defin
Clove_unique
·
2016-05-13 20:00
枚举
bzoj
apio
dfs序
主席树
bzoj 1367: [Baltic2004]sequence(中位数+
可并堆
)
1367:[Baltic2004]sequenceTimeLimit:20SecMemoryLimit:64MBSubmit:935Solved:351[Submit][Status][Discuss]DescriptionInputOutput一个整数RSampleInput794820141518SampleOutput13HINT所求的Z序列为6,7,8,13,14,15,18.R=13So
clover_hxy
·
2016-05-08 17:14
数论
可并堆
bzoj 1367: [Baltic2004]sequence(中位数+
可并堆
)
1367:[Baltic2004]sequenceTimeLimit: 20Sec MemoryLimit: 64MBSubmit: 935 Solved: 351[Submit][Status][Discuss]DescriptionInputOutput一个整数RSampleInput794820141518SampleOutput13HINT所求的Z序列为6,7,8,13,14,15,1
clover_hxy
·
2016-05-08 17:00
bzoj 2809: [Apio2012]dispatching(
可并堆
)
2809:[Apio2012]dispatchingTimeLimit: 10Sec MemoryLimit: 128MBSubmit: 2512 Solved: 1295[Submit][Status][Discuss]Description在一个忍者的帮派里,一些忍者们被选中派遣给顾客,然后依据自己的工作获取报偿。在这个帮派里,有一名忍者被称之为 Master。除了 Master以外,每名
clover_hxy
·
2016-05-05 15:00
bzoj 1455: 罗马游戏(
可并堆
)
1455:罗马游戏TimeLimit:5SecMemoryLimit:64MBSubmit:1346Solved:557[Submit][Status][Discuss]Description罗马皇帝很喜欢玩杀人游戏。他的军队里面有n个人,每个人都是一个独立的团。最近举行了一次平面几何测试,每个人都得到了一个分数。皇帝很喜欢平面几何,他对那些得分很低的人嗤之以鼻。他决定玩这样一个游戏。它可以发两种
clover_hxy
·
2016-05-05 13:32
并查集
可并堆
bzoj 1455: 罗马游戏(
可并堆
)
1455:罗马游戏TimeLimit: 5Sec MemoryLimit: 64MBSubmit: 1346 Solved: 557[Submit][Status][Discuss]Description罗马皇帝很喜欢玩杀人游戏。他的军队里面有n个人,每个人都是一个独立的团。最近举行了一次平面几何测试,每个人都得到了一个分数。皇帝很喜欢平面几何,他对那些得分很低的人嗤之以鼻。他决定玩这样一个游
clover_hxy
·
2016-05-05 13:00
bzoj 2333: [SCOI2011]棘手的操作(线段树+离线操作,
可并堆
+set)
2333:[SCOI2011]棘手的操作TimeLimit:10SecMemoryLimit:128MBSubmit:1554Solved:588[Submit][Status][Discuss]Description有N个节点,标号从1到N,这N个节点一开始相互不连通。第i个节点的初始权值为a[i],接下来有如下一些操作:Uxy:加一条边,连接第x个节点和第y个节点A1xv:将第x个节点的权值增
clover_hxy
·
2016-05-05 11:01
并查集
线段树
可并堆
上一页
1
2
3
4
下一页
按字母分类:
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
其他