随笔分类 -  数据结构---平衡树

摘要:【LG5055】可持久化文艺平衡树 题面 "洛谷" 题解 终于不可以用$Trie$水了。。。 和普通的$FHQ\;treap$差不多 注意一下$pushdown$、$split$要新开节点 代码 cpp include include include include include include 阅读全文
posted @ 2018-12-30 15:43 heyujun 阅读(256) 评论(0) 推荐(0) 编辑
摘要:【POJ2182】Lost Cows 题面 "vjudge" 题解 从后往前做 每扫到一个点$i$以及比前面小的有$a[i]$个数 就是查询当前的第$a[i]+1$小 然后查询完将这个数删掉 两个操作可以用平衡树实现 但是我比较懒用了$01trie$ ~~据说暴力也可以过~~ 代码 cpp incl 阅读全文
posted @ 2018-12-18 22:05 heyujun 阅读(282) 评论(0) 推荐(0) 编辑
摘要:【LG4309】【BZOJ3173】[TJOI2013]最长上升子序列 题面 "洛谷" "BZOJ" 题解 插入操作显然用平衡树就行了 然后因为后面的插入对前面的操作无影响 就直接在插入完的序列上用树状数组求下每个点为终点的最长上升子序就行了 然而懒得手写平衡树了 直接用了$rope$ "rope用 阅读全文
posted @ 2018-12-11 11:45 heyujun 阅读(190) 评论(0) 推荐(0) 编辑
摘要:【LG3835】可持久化平衡树 题面 "洛谷" 解法一 "参考文章" ~~rope大法好~~ $rope$基本操作: 再配合二分即可实现各种操作 如何进行复制: 代码 解法二 用可持久化$trie$可以很方便地实现 代码 cpp include include include include inc 阅读全文
posted @ 2018-12-11 11:43 heyujun 阅读(228) 评论(0) 推荐(0) 编辑