链表
文章平均质量分 52
链表,数组模拟链表
李峻枫
这个作者很懒,什么都没留下…
展开
-
D - 三仙归洞
D - 三仙归洞 题目大意 给出一个长度为nnn的序列,有mmm次操作,每次操作改变序列中元素的排列顺序:将某个数移到某个指定的位置。 最后输出经过mmm次操作之后的序列。 题解 题目最后只是要求输出整个序列,而且在操作的过程中,并不需要输出任何信息,也就是说题目并不要求随机访问序列中的元素。 因此,链表最适合来完成这题。 对于操作4,反转,只需要一个tag标记。 特别注意:对于操作3,如果交换两个位置是相邻的,直接交换会使得指针指向自己,造成死循环,需要特判一下。 时间复杂度 每一次操作,时间复杂度是原创 2021-06-05 22:59:23 · 296 阅读 · 2 评论 -
BZOJ4548.小奇的糖果
Description有 N 个彩色糖果在平面上。小奇想在平面上取一条水平的线段,并拾起它上方或下方的所有糖果。求出最多能够拾起多少糖果,使得获得的糖果并不包含所有的颜色。 Input包含多组测试数据,第一行输入一个正整数 T 表示测试数据组数。 接下来 T 组测试数据,对于每组测试数据,第一行输入两个正整数 N、K,分别表示点数和颜色数。 接下来 N 行,每行描述一个点,前两个数 x, y原创 2018-02-08 17:34:12 · 240 阅读 · 0 评论 -
JZOJ5623. 【NOI2018模拟4.2】program
题目 题目大意 给出一个操作序列,询问给出一个区间, 求这个区间操作所产生的答案。 题解 假设先对原操作序列求一次答案, 那么询问的某个区间的答案就一定是连续的一段。 有了这个想法,这题就很简单了。 首先先在操作序列的最前端添加一定数量的”>”保证指针不会从左边出去, 维护0-9的前缀和,已经每一个位置第一次被左边的位置的时刻fifif_i以及第一次被右边的位置...原创 2018-04-08 11:52:07 · 225 阅读 · 0 评论 -
2018百度之星初赛A度度熊学队列
Problem Description 度度熊正在学习双端队列,他对其翻转和合并产生了很大的兴趣。 初始时有 N 个空的双端队列(编号为 1 到 N ),你要支持度度熊的 Q 次操作。 ①1 u w val 在编号为 u 的队列里加入一个权值为 val 的元素。(w=0 表示加在最前面,w=1 表示加在最后面)。 ②2 u w 询问编号为 uu 的队列里的某个元素并删除它。( w=0 表示...原创 2018-08-11 20:49:33 · 198 阅读 · 0 评论