随笔分类 - 数据结构
九冥殿底有龙泉,桀骜难驭囚神剑。
或有缘时见锋芒,一朝出世惊四野。
摘要:给定一个不降整数序列 $1\le x_1\le x_2\le \cdots\le x_n\le q$,请构造一个实数序列 $y$ 满足 $y_i\in [1,q]$,$y_i-y_{i-1}\in[a,b]$,且最小化 $\sum (y_i-x_i)^2$,保证有解。 #### 利用凸函数性质维护导
阅读全文
摘要:比较迷糊,比较乱搞。 我们考虑从上往下进行 $dp$,$dp_i$ 表示从顶上水槽 $i$ 最多的流量。然后我们发现,每个高度,能用来进行转移的区间一定没有被完全覆盖。也就是,只有在遮挡关系中被覆盖的区间可能被用来转移。 同时,每个区间还是有要求的,比如 $[1,3]$ 的 $[2,3]$ 部分后来
阅读全文
摘要:首先我们通过翻转坐标系强制要求光的方向是正方向。翻转坐标系就翻转矩阵的对应维度就可以了。 然后我们发现,如果不考虑遮挡关系,只考虑平面,对于每个位置的方块而言,能照到它的光是一段区间。就是能照到 $(i-1,j)$ 和能找到 $(i,j-1)$ 的光。 我们考虑把光映射到光所在直线在 $y$ 轴上的
阅读全文
摘要:My solution 首先,我们考虑最暴力的 $dp$,设 $dp_{i,j}$ 表示当前处理到第 $i$ 位,目前序列尾部是 $j$ 的方案数。这个 $dp$ 的转移是很容易的。$dp_{i,j}=\sum_{k=1}^{a_{i-1}}[k\neq j]dp_{i-1,k}$。但是复杂度也是很
阅读全文
摘要:题意:给一个字符串,每次询问它的一个区间,问最少删除多少个字符,使得区间没有子序列 2016,但是有子序列 2017。 My solution 首先考虑贪心,通过预处理的方式找到区间最后一个 7,依次往前贪心的找到最靠后的一组 2017。接下来,我们需要 7 的后面没有 6,7 前面的部分不能组合出
阅读全文
摘要:$$是夜萧索漏星光,一秋叶打漫天霜。钟响,卷地西风扫鸿芒。$$ $$求索那堪路漫长,重心剖树早相忘。清唱,时空阻限又何妨?$$ PA-2017 Banany 考虑点分树。先把点分树建出来再考虑更多的事情。 对每个分治子树,维护分治子树内所有点到当前分治重心的距离加价值的最大值。考虑使用数据结构进行维
阅读全文
摘要:这道题的主流做法是主席树。 考虑离线怎么做,首先是莫队,但是很明显莫队很难往在线扩展。那么考虑线段树。 首先进行一些分析,我们可以对于每个 $a$,将第 $i$ 个 $a$ 和第 $i+k$ 个 $a$ 配对,那么如果 $[l,r]$ 中包含了 $k+s$ 个 $a$,则一共包含了 $s$ 个对。那
阅读全文
摘要:按照思维难度加大和代码难度减小的顺序,我们来看这道题的不同做法。 若你无畏,我亦无畏 - 平衡树 平衡树简直是天然用来维护这种操作的——合并两个区间,提取一个值。我们可以对每个行的前 $m-1$ 位和最后一列各维护一棵平衡树。平衡树上二分得到要删除的数,将当前区间分成 左边 - 要提走的数 - 右边
阅读全文
摘要:结构稳,01 分,枉划层,谁想锦衣自选人?不过贪婪座下臣。 $\text{Treap}$ 我们的第一个想法是用衣服贡献人。把衣服按照 ${-p_i,c_i}$ 为关键字排序,然后依次遍历衣服,看当前哪些人会买当前的衣服。 我们可以用 $fhqTreap$ 这样的数据结构维护所有的人的 ${b_i,a
阅读全文

浙公网安备 33010602011771号