08 2021 档案
摘要:枚举携带的"A型守护精灵"数,那么即只能经过的边,并最小化1到路径上最大的 将所有边按照从小到大排序,那么前者即不断加入边,后者通过LCT维护的最小生成树即可 具体的,将每一条边拆成一个点,向对应的两端点连
阅读全文
摘要:显然compare操作可以通过两次when操作实现,以下仅考虑前两种操作 为了方便,将优先级最高的节点作为根,显然根最后才会被删除 接下来,不断找到剩下的节点中(包括根)优先级最高的节点,将其到其所在树根的所有节点从下到上依次加入到序列的开头并删除,不难发现最终得到的序列即为燃烧的顺序 将每一次删除
阅读全文
摘要:为了方便,对题意做以下处理: 1.称"西部主题"和"科幻主题"分别为黑色和白色 2.删去题中"保证没有两条不同的道路连接同一对景点"的条件 关于题中的条件,即保证图中总存在重边、一度点或二度点(或仅剩一个点) (具体证明参考2019年的论文,这里就省略了) 考虑对这些特殊的结构进行处理,具体如下——
阅读全文
摘要:考虑最后这棵二叉树的结构,不难发现被移动的点在原树或新树中构成的都是若干棵完整的子树 (若被移动,则在原树或新树的子树中所有点都会被移动) 先在原树中考虑此问题,对于每一棵由被移动的点所构成的极大的子树,将子树大小累加到这棵子树根的父亲的权值上(初始为0),将深度和累加到答
阅读全文
摘要:(四边形不等式的套路题) 对于某一组,显然可以区间dp,设表示区间的答案,则转移即$$f_{l,r}=\begin{cases}0&(l=r)\\\sum_{i=l}^{r}\sum_{j=l}^{r}dist(a_{i},a_{j})+\min_{l
阅读全文
摘要:显然问题被分为两部分,先考虑如何求—— 令第一次所选的人编号为1,其之后所有人按顺时针依次编号为,那么用一个序列来描述状态,其中第个元素为当前存在的人中编号第小的人手牌数(显然序列长度即为剩余人数) 初始序列显然为(共
阅读全文
摘要:简单分析,不难得到以下转移——$$f_{n}=$
阅读全文
摘要:为了方便,用来描述复杂度 (对原串建立SAM)注意到,考虑对和的大小关系分类讨论: 1.若,即询问次数较少,将其与原串建立一个广义SAM,然后找到枚举所有区间,倍增找到该区间对应子串的位置,该right集合大小即为答案
阅读全文
摘要:显然每种颜色的花是独立的,可以分别求出答案后取 对于某种颜色,建立一张二分图,左右分别为行列,且第行和第列有边当且仅当 此时,问题即对边染色,并要求相同颜色的边没有公共端点,并最少化颜色数(包含初始颜色) 这是二分图的边着色问题,其答案
阅读全文
摘要:模板题:在有向图中,对每一个点求以其为根的最小(外向)生成树 (当图是强连通时)可以使用朱刘算法,算法过程如下: 1.对每一个节点,选择指向该点的边权最小的边,即得到一张子图 2.任选这张子图的一个简单环,并对这个环执行以下操作—— (1)对于环上的边,将所有以为终点的边边权
阅读全文
摘要:将一个格子看作一个节点,相邻(有公共边)的同色格子之间连边,那么由前两个条件即要求图恰被分为两个非空连通块(由于,显然不能不使用某种颜色) 下面,来分析图中的简单环,其对应于网格图上即会将网格图分为了两部分,简单分类讨论不难发现只有这个环恰有最外圈所有节点构成时仍能满足第3个条件
阅读全文
摘要:令为狙击手的坐标,其攻击范围即以为中心的的立方体 为了避免的影响(二分答案会多一个),不妨将其变为以为左下角的的立方体,注意到这样仅仅是实现了平移,并不影响答案 由此,注意到任意时
阅读全文
摘要:二分和第一个不同的位置,即需要对于,判定是否存在且满足条件的 (注:这里的条件不包含的字典序最小) 显然已经确定,记其中第种字母出现次数为
阅读全文
摘要:称区间为普通区间,当且仅当且其操作两次内不会变为给定区间 结论:若为普通区间,则和的状态(是否先手必胜)相同 (关于这个结论的正确性,不难分类讨论得到) 由此,对于普通区间不断缩小使其变为非
阅读全文
摘要:约定:表示多项式的次项系数 对于多项式,定义的复合逆为满足的多项式 性质1:存在复合逆的充要条件
阅读全文
摘要:不妨假设,可以通过翻转整个格子序列来调整 令为到的期望步数,显然有方程$a_{i}=\begin{cases}0&(i=y)\\\frac{\sum_{j=i+1}^{n}a_{j}}{n-i}+1&(i<y)\\\frac{\sum_{j=1}
阅读全文
摘要:类似于[NOI2021]轻重边的逆过程,操作1即为对执行access(根为1),即为到的虚边数 对前者用LCT维护,并记录轻重边的切换,显然切换总量为 换言之,问题即要支持: 1.修改一条边的边权(实边边权为0,虚边边权为1),
阅读全文
摘要:问题即查询将其按照dfs序排序后,相邻两点(包括首尾)的距离和 考虑使用莫队+set维护,时间复杂度为,无法通过 进一步的,注意到删除是可以用链表实现的,因此考虑回滚莫队: 仍以对原序列分块,并以左端点所在块升序为第一关键字、右端点降序为
阅读全文
摘要:(这是一个线性的做法) 显然对于合法的区间,众数是唯一的,因此不妨枚举众数,将众数标记为1、其余数标记为-1,此时问题即求有多少个区间和大于0 考虑暴力的做法:从左到右枚举右端点,记当前前缀和为,即查询之前有多少个前缀和小于 具体的,记为(当前)有多
阅读全文
摘要:显然可以费用流来做,具体建图如下—— 点集:源点,汇点,左边个工人,右边个设备 边集:源点向第个工人连的边,第个设备向汇点连的边,工人向可用的设备连的边 跑最小费用最大流,流量为时的费用即为
阅读全文
摘要:注意到一个人的三条链一定不会同时选(忽略仅选一个终点的限制),因为其有公共点(起点) 换言之,问题相当于给定条链,选择条没有公共点的链,并最小化代价和 进一步的,显然也不存在多于条且没有公共点的链,因此"选择条链"也可以理解为选尽量多的链(若选不到条链即为-1)的同时
阅读全文
摘要:将询问拆成到和(靠近的儿子)到两部分,分别处理(后者以前者的答案为基础) 两者是类似地,不妨仅考虑前者:用树剖将该询问拆成dfs序上若干个区间,考虑从后往前遍历dfs序(显然即从下到上),若当前位置被覆盖则执行该节点的操作 进一步的,考虑
阅读全文