HDU 3436 Queue-jumpers (Splaytree)

发布时间:2016-12-8 8:15:15 编辑:www.fx114.net 分享查询网我要评论
本篇文章主要介绍了"HDU 3436 Queue-jumpers (Splaytree)",主要涉及到HDU 3436 Queue-jumpers (Splaytree)方面的内容,对于HDU 3436 Queue-jumpers (Splaytree)感兴趣的同学可以参考一下。

题意:有n个人,编号分别为1~n,从小到大排成一列,有q次操作。 (n <= 10^8, q <= 10^5) Top操作:  把编号为x的人拿出来放到最前面。 Query操作: 问编号为x的人现在在第几个。 Rank操作: 问第x个人编号为多少。 思路:把Top操作和Query操作的所有数离散化下,然后把n个人分成一个个区间,比如6个人,离散化编号4, 5的人,则分成区间(1, 3) (4, 4), (5, 5), (6, 6),保存好离散化的人在伸展树节点的下标,然后把区间建成伸展树就可以了。又被一个小细节坑了好久,调了好久,就是把节点放到最前面的时候我是先把它删除,然后在插入到最前面,可是我插入到最前面的时候忘了修改它的父亲导致debug好久才发现。。每个细节都不能出错才行啊。。

上一篇:noticeString
下一篇:(译)Objective-C的动态特性

相关文章

相关评论