jumpers专题

HDU 3436 Queue-jumpers

题意: n个人站成一排  一开始是从1到n有序的  现在有三个操作  Top操作是将一个人排到队首  Query操作是询问某个人现在排第几  Rank操作是询问排某个位置的人是谁 思路: 将队伍扭来扭去…  很像splay的旋转吧(哪像了!!) 这是个不错的splay题… 首先  n很大  但是操作不多  想到离散化 离散化还有个技巧  我们发现只有top和query操作对单人进

HDU 3436 Queue-jumpers Splay+离散化

有n个人从小到大排成一列,分别记为1,2...,m次询问,3种操作: 1.把x这个人放到队首。 2.求x这个人在哪个位置。 3.求x这个位置是那个人。 虽然最多有1亿个人,但是操作最多只有10w次,那就离散化,把连续一段没有出现过的数压缩成一个点,然后就是普通的Splay树了。 #include <cstdio>#include <cstring>#include <algorithm>u

UVa 10038 / POJ 2575 / ZOJ 1879 Jolly Jumpers (water ver.)

10038 - Jolly Jumpers Time limit: 3.000 seconds http://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&category=24&page=show_problem&problem=979 http://poj.org/problem?id=2575 htt