splay__poj3580

来源:互联网 发布:手机兼职软件 编辑:程序博客网 时间:2024/06/01 16:10

这真是很让人难过的一道题。。。。。但是我要硬着头皮写完splay TwT

题目要求实现一种数据结构,支持6种操作:
add x,y D:第x个数到第y个数之间的数每个加D;
reverse x y:第x个数到第y个数之间全部数翻转;
revolve x y T:第x个数到第y个数之间的数,向后循环流动T次,即后面T个数变成这段子序列的最前面T个,前面的被挤到后面。
Insert x P:在第x个数后面插入一个数P。
Delete x:删除第x个数。
Min x,y:求第x个数到第y个数之间的最小数字。

是对区间的修改,但显然线段树不行,所以splay
reverse x y:可以借助线段树的lazy_tag先在树根标记,查找时交换左右子树,把标记传下去。

0 0