摘要: 题意:根据m条指令改变排列1 2 3 4 … n ,每条指令(a, b)表示取出第a~b个元素,反转后添加到排列尾部 分析:用一个可分裂合并的序列来表示整个序列,截取一段可以用两次分裂一次合并实现,粘贴到末尾可以用一次合并实现。 翻转可以采用在每个结点上做标记的方法,flip = 1意味着将这棵子树 阅读全文
posted @ 2016-12-17 16:22 kiraa 阅读(273) 评论(0) 推荐(0) 编辑
摘要: 伸展操作:将treap中特定的结点旋转到根 阅读全文
posted @ 2016-12-17 16:09 kiraa 阅读(947) 评论(0) 推荐(0) 编辑