![](https://img-blog.csdnimg.cn/20201014180756724.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Splay
fyc_kabuto
一个蒟蒻程序员
展开
-
1056: [HAOI2008]排名系统&1862: [Zjoi2006]GameZ游戏排名系统&codevs 1985
要求打一个数据结构,支持单点修改,单点排名查询,区间排名查询。Splay模板题。可以多加两个节点在两边,开个数组记录玩家在Splay上的位置。然而bzoj卡cin,又懒,不想打哈希,于是愉快的精神AC了。可以交codevs:http://codevs.cn/problem/1985/手贱错误:del操作while(tr[p].son[1]!=0) p=tr[p].s原创 2017-07-07 08:23:22 · 412 阅读 · 0 评论 -
bzoj 2827: 千山鸟飞绝
题意:乱七八糟。题解:坐标没卵用,直接map掉就好。 然后对每一个位置开一个splay,直接删点,加点。标记一下。 最后输出的时候都splay下就好了。 细节略多需小心。 code:#include<cstdio>#include<cstring>#include<iostream>#include<cstdlib>#include<map>#include<algorithm>原创 2017-09-18 16:56:54 · 584 阅读 · 0 评论 -
3196: Tyvj 1730 二逼平衡树
题目比较简洁:您需要写一种数据结构(可参考题目标题),来维护一个有序数列,其中需要提供以下操作:1.查询k在区间内的排名2.查询区间内排名为k的值3.修改某一位值上的数值4.查询k在区间内的前驱(前驱定义为小于x,且最大的数)5.查询k在区间内的后继(后继定义为大于x,且最小的数)又有区间,又有排名,所以明显是树套树了,反正我写了区间线段树套平衡树。相当于在每个原创 2017-07-13 07:58:08 · 229 阅读 · 0 评论 -
bzoj 1208: [HNOI2004]宠物收养所
splay原创 2017-12-26 16:32:32 · 174 阅读 · 0 评论 -
bzoj 1014: [JSOI2008]火星人prefix
splay+hash+二分原创 2018-01-01 19:14:24 · 251 阅读 · 0 评论 -
bzoj 1251: 序列终结者
题意:写一个数据结构,支持区间加,区间翻转,求区间最大值。题解:splay裸题不解释,拿来练手。 这么就没写居然能一次过编译+1A也是很感动。 code:#include<cstdio>#include<cstdlib>#include<iostream>#include<cstring>#define LL lo...原创 2018-03-19 17:05:42 · 224 阅读 · 0 评论 -
codechef TASUFFIX
题意:设数组 A[i] = i,大小为 n,对其进行 m 次操作,有两种操作: 1. 把某一段提到开头 2. 区间翻转 所有操作结束后询问后缀数组的 rank sa数组为 A 的字符串 S有多少种可能 S 的限制是字符串中出现的都是正整数,且最大元素等于不同的元素个数 n≤109,m≤105n≤109,m≤105n ≤ 10^9, m ≤ 10^5题解:先吐槽,这题调了几天...原创 2018-04-10 10:46:33 · 229 阅读 · 0 评论