随笔分类 -  数据结构 -- Splay

摘要:题目传送门:https://codeforces.com/problemset/problem/547/B 题目大意: 给你一个长度为n的序列A,对于一个kn,记Bk,i=mini+k1Aj,记$C_k=\max\limits_ 阅读全文
posted @ 2021-07-01 14:47 Wolfycz 阅读(43) 评论(0) 推荐(0) 编辑
摘要:Description 给出一个初始序列A1,A2,...,An,要求你编写程序支持如下操作: 1. ADD x y D:给子序列Ax...Ay的每个元素都加上D。例如对1,2, 3,4,5执行"ADD 2 4 1" 会得到1,3,4,5,5。 2. REVERSE x y:将子序列Ax...Ay翻 阅读全文
posted @ 2018-08-15 14:23 Wolfycz 阅读(213) 评论(0) 推荐(0) 编辑
摘要:Description 请写一个程序,要求维护一个数列,支持以下 6 种操作: 请注意,格式栏 中的下划线‘ _ ’表示实际输入文件中的空格 Input 输入的第1 行包含两个数N 和M(M ≤20 000),N 表示初始时数列中数的个数,M表示要进行的操作数目。 第2行包含N个数字,描述初始时的数 阅读全文
posted @ 2018-08-15 10:40 Wolfycz 阅读(368) 评论(0) 推荐(0) 编辑
摘要:Description 您需要写一种数据结构(可参考题目标题),来维护一个有序数列 其中需要提供以下操作: 翻转一个区间,例如原有序序列是5 4 3 2 1,翻转区间是[2,4]的话,结果是5 2 3 4 1 Input 第一行为n,m n表示初始序列有n个数 这个序列依次是(1,2……n 1,n) 阅读全文
posted @ 2018-08-15 10:27 Wolfycz 阅读(161) 评论(0) 推荐(0) 编辑
摘要:本篇博客有详细题解, "浅谈算法——splay" 阅读全文
posted @ 2018-08-15 10:24 Wolfycz 阅读(117) 评论(0) 推荐(0) 编辑
摘要:Description 一个实验室里有n个长短不一的试管。你的任务是编写一段程序,用机器臂把它们按照高度从小到大的顺序排列。 对于高度相同的试管,排序前后的相对位置应保持不变。排序方法如图所示。 排序需要n次操作,其中第i次操作是反转序列i ~ Pi,其中Pi是目标状态中第i个试管当前所在的位置。比 阅读全文
posted @ 2018-08-15 10:13 Wolfycz 阅读(191) 评论(0) 推荐(0) 编辑
摘要:Description 瑶瑶很喜欢玩项链,她有一根项链上面有很多宝石,宝石从1到n编号。 首先,项链上的宝石的编号组成一个序列:1,2,3,...,n。 她喜欢两种操作: 1.CUT a b c:他会先将a至b号宝石切下来,然后接到c号宝石后面,组成一个新的项链。 举个例子,如果n=8,那么这个项链 阅读全文
posted @ 2018-08-15 09:58 Wolfycz 阅读(244) 评论(0) 推荐(0) 编辑
摘要:Description GameZ为他们最新推出的游戏开通了一个网站。世界各地的玩家都可以将自己的游戏得分上传到网站上。这样就可以看到自己在世界上的排名。得分越高,排名就越靠前。当两个玩家的名次相同时,先上传记录者优先。由于新游戏的火爆,网站服务器已经难堪重负。为此GameZ雇用了你来帮他们重新开发 阅读全文
posted @ 2018-08-15 09:21 Wolfycz 阅读(217) 评论(0) 推荐(0) 编辑
摘要:Description Sally有一个很大的书柜。这个书柜的构造有些独特,即书柜里的书是从上至下堆放成一列。她用1到n的正整数给每本书都编了号。Sally在看书的时候,每次取出一本书,看完后放回书柜然后再拿下一本。由于这些书太有吸引力了,所以她看完后常常会忘记原来是放在书柜的什么位置。不过Sall 阅读全文
posted @ 2018-08-15 00:25 Wolfycz 阅读(214) 评论(0) 推荐(0) 编辑
摘要:Description 囧囧有个囧盒,可以处理一些很囧的事情。这个囧盒一开始是空的,可以处理2种操作: Add(X):将元素X放入囧盒。 Get:第I次调用Get的时候,输出囧盒里面第I小的数。下面是囧囧操作的一个例子: | N(按升序排列) | 操作 | Get调用次数 | 囧盒的内容 | 输出 阅读全文
posted @ 2018-08-15 00:06 Wolfycz 阅读(164) 评论(0) 推荐(0) 编辑
摘要:Description OIER公司是一家大型专业化软件公司,有着数以万计的员工。作为一名出纳员,我的任务之一便是统计每位员工的工资。这本来是一份不错的工作,但是令人郁闷的是,我们的老板反复无常,经常调整员工的工资。如果他心情好,就可能把每位员工的工资加上一个相同的量。反之,如果心情不好,就可能把他 阅读全文
posted @ 2018-08-14 23:42 Wolfycz 阅读(147) 评论(0) 推荐(0) 编辑
摘要:Description 最近,阿Q开了一间宠物收养所。收养所提供两种服务:收养被主人遗弃的宠物和让新的主人领养这些宠物。每个领养者都希望领养到自己满意的宠物,阿Q根据领养者的要求通过他自己发明的一个特殊的公式,得出该领养者希望领养的宠物的特点值a(a是一个正整数,a include include 阅读全文
posted @ 2018-08-14 16:53 Wolfycz 阅读(159) 评论(0) 推荐(0) 编辑
摘要:Description Tiger最近被公司升任为营业部经理,他上任后接受公司交给的第一项任务便是统计并分析公司成立以来的营业情况。Tiger拿出了公司的账本,账本上记录了公司成立以来每天的营业额。分析营业情况是一项相当复杂的工作。由于节假日,大减价或者是其他情况的时候,营业额会出现一定的波动,当然 阅读全文
posted @ 2018-08-14 16:34 Wolfycz 阅读(151) 评论(0) 推荐(0) 编辑
摘要:BST(二叉查找树)是个有意思的东西,种类巨TM多,然后我们今天不讲其他的,我们今天就讲splay 首先,如果你不知道Splay是啥,你也得知道BST是啥 如上图就是一棵优美的BST,它对于每个点保证其左子树内所有点小于自己,右子树内所有点大于自己,而且这棵树高只有logn,所以找一个点只需 阅读全文
posted @ 2018-08-13 23:36 Wolfycz 阅读(652) 评论(0) 推荐(0) 编辑
摘要:Description N柱砖,希望有连续K柱的高度是一样的. 你可以选择以下两个动作 1:从某柱砖的顶端拿一块砖出来,丢掉不要了. 2:从仓库中拿出一块砖,放到另一柱.仓库无限大. 现在希望用最小次数的动作完成任务. Input 第一行给出N,K. (1 ≤ k ≤ n ≤ 100000), 下面 阅读全文
posted @ 2018-04-26 20:27 Wolfycz 阅读(193) 评论(0) 推荐(0) 编辑
摘要:这个题目,扫描线+玄学 大概操作就是用个扫描线从上往下扫。 博主有点懒,就直接贴代码了,但是我还是给大家贴个比较详细的博客,除了代码都可以看 "wym的博客" ,我基本上就是按wym大佬的思路来的,当然,我的代码里也加了点注释,大家也请凑合着看吧。 Ps: ycz:STL什么辣鸡,跑这么慢,你看手写 阅读全文
posted @ 2018-03-03 16:47 Wolfycz 阅读(583) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示