随笔分类 - 数据结构——差分/前缀和
1
摘要:I.V.[FJOI2018]领导集团问题 这题的难点主要是在状态的设计上。 首先,一个naive的想法是设 表示节点 子树中,强制节点 选择的最优答案,然后使用线段树合并转移。 但是这样在合并不同子树时会出大问题。于是我们不得不更换状态。 于是我们设 \(f_
阅读全文
摘要:I.II.[ZJOI2019]语言 一开始看错题,以为同一种语言会被普及多次,然后就成了神题不会做。一看题解,发现自己看错题了,原来是垃圾题。 一个点所能到达的点,只有与它在同一条路径上出现过的点,换句话说就是经过它全部路径的并。 全部路径的并很好搞,就是全部路径端点建出虚树的大小。虚树大小也很好搞
阅读全文
摘要:XXII.[USACO10OPEN]Triangle Counting G 题解
阅读全文
摘要:XXXVI.[十二省联考2019]异或粽子 好像对可持久化结构有了新的认识( 首先,我们考虑,区间异或和,可以直接被转换为前缀异或和的异或和,即 。于是我们考虑对于每个 找到与其异或起来最大的 。
阅读全文
摘要:XXVIII.[UOJ#576][ULR#1]服务器调度 非常可怕的大数据结构题,原版代码整整码了9K,就算稍微合并合并也剩下7K…… 首先,我们考虑对每种颜色,建出一棵虚树。考虑求出虚树的一条直径。则有个结论是原树上到任意一点最远的点肯定是此直径的端点之一。 例如,我们考虑下方的这棵树: O /
阅读全文
摘要:XXIV.[Code+#1]Yazid 的新生舞会 关于众数,我们通常是对于每个数求出它作为众数的区间数。 考虑某个数 。我们可以发现,如果令 的所有位置有 ,其余位置有 ,则如果某个区间 关于 的区
阅读全文
摘要:XXIII.[JOI 2020 Final] 火事 题解
阅读全文
摘要:XII.差分与前缀和 打 表 出 奇 迹 我们先考虑前缀和。 对于两个下标,我们考虑阶前缀和后,位置会被加上多少个。显然,加上的数量,仅与的值有关。 于是我们就打表辣 \ 0 1 2 3 4 1 1 1 1 1 1 2
阅读全文
摘要:IV.[TJOI2019]甲苯先生和大中锋的字符串 判断一个子串出现几次,我们仍然可以采取之前提到的遍历parent tree的方法。 考虑一个等价类。明显,这个等价类中所有串都出现且仅出现了(等价类出现的次数)。若这个次数恰好为 ,则从类中最长的串到最短的串,所有长度的串的数量都增加了
阅读全文
摘要:XXVIII.[BZOJ3277]串/CF204E Little Elephant and Strings 这两题是重题,代码改都不改交上去就能A,故放在一起讲。 网上的大多数SA题解都是或的复杂度,太令人不爽了。因此,这里有一种复杂度的
阅读全文
摘要:VIII.[SDOI2008]Sandy的卡片 ……有什么意义吗…… 差个分,然后就是IV.[POI2000]公共串的内容了,套个单调队列,解决,假如你用DC3的话。 代码: #include<bits/stdc++.h> using namespace std; int all,n,m
阅读全文
摘要:XXI.[ZJOI2016]大森林 论LCT的百种用法系列 这题有几个性质: 1.询问与时间无关。因为只是添加新点,原来点之间的位置关系不变。因此只要询问的两个点都被建出来了,何时进行询问并无影响。 2.操作重叠的部分很多。因为我们不管怎么加点,即使是加原树中没有的点,仍然有原来点之间的位置关系不变
阅读全文
摘要:这里是SOSDP(子集DP)、高维前缀和、FMT(快速莫比乌斯变换)、FWT(快速沃尔什变换)学习笔记。 在接下来的讲解中,我们将会发现前三个东西是本质相同的,而最后一个东西是其扩展。 本博客在半年前就已经有计划去写了,只不过当时题目较少没能如愿。现在攒了几道题,开始动笔。 引入 我们首先来看一道最
阅读全文
摘要:CL.[NOI2018] 冒泡排序 结论1.交换次数压到下界,当且仅当不存在长度大于 的下降子序列。 证明很简单。众所周知的是,冒泡排序的交换次数等于序列逆序对数。要压到下界,与每个点有关的逆序对数都只能为 ,因为从 到 的过程中本身就要
阅读全文
摘要:CXLII.CF1158F Density of subarrays 题解
阅读全文
摘要:LXXXVI.CF295D Greg and Caves 题解
阅读全文
摘要:LXXXII.UOJ#11. 【UTR #1】ydc的大树 很明显,如果我们令一个黑点为树根,设它的“好朋友”集合为中所有白节点均可以使不开心。这个可以用树上差分来进行路径加。现在关键是求出$\oper
阅读全文
摘要:LXIX.[USACO18JAN]Stamp Painting G 思路: 发现任何具有一段长度大于等于的相同颜色区间的串都是合法的(这个区间被看作最后一次染色的目标)。 因此反向思考,我们求出所有不具有长度大于等于的相同颜色区间的串数量,然后用总数量()减一下即可。 我们
阅读全文
摘要:LXV.[USACO20OPEN]Sprinklers 2: Return of the Alfalfa P 首先,一个合法的方案,肯定是有一条从左到右向下延伸的轮廓线: 例如: 其中,蓝色系格子是玉米,红色系格子是苜蓿;浅蓝色位置必须放玉米喷射器,深红色格子必须放苜蓿喷射器。深蓝和浅红格子放不放均
阅读全文
摘要:VI. "CF528D Fuzzy Search" 照旧分字符处理。 首先,我们可以算出每个字符是否可以填入每个位置。 例如,当文本串为时,以下这张表表示了每个位置是否可以填入每个字符: ||0|1|2|3|4|5| | : : | : : | : : | : : | : :
阅读全文
1