笛卡尔树()
因为明天要考,而且考得是蓝题,所以我的总结只会在蓝题上面多说几句。
【模板】笛卡尔树
P1310 [NOIP2011 普及组] 表达式的值
这道题目我当时做的很水。
我们要将这个序列转化成一棵算式树,然后我们就能用
在树上,当前节点是
那么时间复杂度就会卡在算式树的转换上面。
其中括号还存在优先级,这个的处理又是很麻烦的。
首先
如果遇到了
然后建树的时候不需要括号的参与。这样做就可以了qwq。
Gardener AlexCF1220F
昨天题解区的方法抽象+恶心。初三有两位同学分享了更加简单的方法。其实就是二分找到最优的位置。每一次的check都暴力建树算深度判断。
P6453 [COCI2008-2009#4] PERIODNI
这也是一道蓝题,同样是dp。
P3592 [POI2015] MYJ
紫色题目。难得温故。
HISTOGRA - Largest Rectangle in a Histogram
比较简单,绿色题目,现场能推。
P3246 [HNOI2016] 序列
紫色题目。有一个性质所以可以用前缀和处理
有一个比较坑的地方就是莫队在扩展的时候先l--,r++再算其他的。不然可能会出现L > R的情况。
跟笛卡尔树的模板关系不大。
P4755 Beautiful Pair
紫色题目,可持久化线段树。当时直接复制粘贴的以前代码。
得出结论:明天会考哪两道重题简直显而易见。TQ的提示真不错。
考重题的原因是为了有一个好看的记档分。咱就说这跟我一个高一的真的没有什么关系啊啊啊。
「51NOD1934」受限制的排列
会这道题目的关键就是读懂题目。简单来说就是知道哪些是不满足条件的。然后就可以愉快分治了。
不得不说笛卡尔树的本质就是用区间最值作为断点进行分治。