随笔分类 - 测验
摘要:实在是难以相信我竟然又来到了机房训练。 P10141 [USACO24JAN] Merging Cells P 一个简单的 \(dp_{i,l,r}\) 表示最后如果剩下的是 \(i\),当前 \(i\) 所处的区间是 \([l,r]\) 的概率。 区间往外拓展当前仅当当前 \([l,r]\) 区间
阅读全文
摘要:此后再无 NOIP 模拟赛。 A 给一个包含 \(n\) 个布尔变量的后缀逻辑表达式,给定这 \(n\) 个变量的初值,请你求出:若想改变表达式的值,最少需要改变(取反)其中多少个变量的值。 树形 dp,只需要设 \(f_u\) 表示 \(u\) 子树的答案。 B 给定一个排列,判断是否存在等差子序
阅读全文
摘要:A 序列 \(A=\{1,2,\dots,n\}\),求交换两个不同位置的方案,使得存在 \(i\) 前缀的和等于 \(i+1\) 后缀的和。 考虑二分出最大的 \(p\) 使得 \(sum_p\le \frac{1}{2}sum_n\),那么最后是 \(p\) 或 \(p-1\) 的和满足条件。
阅读全文
摘要:B 有三种比赛的场地,每种场地都给出选手能力的排名,每次交换两个人在某个场地的排名,或者查询某个人是否有安排比赛的方法使得他赢得比赛,即其他所有人都被某个没有被还击败的人击败过。 考虑转化为图论,一个场地能力能力排 \(i\) 的向 \(i+1\) 建边,那么问题就变成了 \(x\) 出发能否遍历所
阅读全文
摘要:A 我唐氏了,原来分层图后可以变成 DAG 少一只 log。 B 一场比赛有 \(n\) 人参加,已知第一天第 \(i\) 个人得到了 \(A_i\) 分,且分数互不相同,第二天每个人的得分将是一个 \(1\sim n\) 的排列,比赛的排名按两天的总分从大到小排序(有同分则随机排序)。给定 \(P
阅读全文
摘要:C 一张图支持删边加边改点权,以及询问所有连通块 \(\prod (a_i+x)\bmod U^V\) 的值。 \(n,q\le 10^5,U\le 10,V\le 4\)。 我的想法是折半,对于每个 \(x\bmod 100\) 计算出答案,然后现在相当于求 \(\prod (a_i+100x)\
阅读全文
摘要:A 给定序列 \(a\),只有三种值,问最长的区间满足只有一种值出现,或者三种值的出现次数互不相同。 \(n\le 10^6\)。 一个 trick,三种值出现次数不同的话考虑钦定大小顺序,设 \(cnt_0<cnt_1<cnt_2\)。 那么,\(s_{r,1}-s_{r,0}>s_{l-1,1}
阅读全文
摘要:A 给定一个无限长序列的 \(0\sim n-1\) 项,每项满足与 \(n\) 的差不超过 \(1\)。 之后的每一项满足 \(a_i=\sum_{j=0}^{i-1}[a_j+j\ge i]\)。\(q\) 次询问第 \(p\) 个位置的值。\(p\le 10^{15}\)。 非常难的签到,考虑
阅读全文
摘要:A P9195 [JOI Open 2016] JOIRIS 逆天构造。直接看题解吧,主要是将列进行 k 染色,然后瞎 jb 做一下。 B CF461E Appleman and a Game 我们可以先建出 SAM,设 \(dp_{i,u}\) 表示当前处理到 \(i\) 位,SAM 上到 \(u
阅读全文
摘要:A 一个 \(n\times m\) 的矩形已经给出了 \(k\) 个位置的数,判断是否有方案使得填入非负整数后,每一个 \(2\times 2\) 的子矩形都满足左上+右下=左下+右上。\(n,m,k\le 1e5\)。 注意到,矩形合法的条件可以转化为对于任意相邻的两列,在每行中,这两列值的差都
阅读全文
摘要:A 一个网格图,你可以任意行走到相邻的格子;可以任意进行发射传送门,可以朝任意方向,传送门会放在第一个碰到的墙壁处。可以删掉传送门,只允许存在两个门,使用传送和走一格花费 \(1\) 的时间。 给定起点终点,问最短时间。 预处理每个点最近的墙,然后先在这个点发射传送门,走到最近的墙这里传送过去即可。
阅读全文
摘要:A 点仙人掌形成的沙漠,求删 \(k\) 条边使得联通块数最多是多少。 考虑先删桥,然后删环,每个环都需要断一条边没有贡献,此后没断一条边都多一个联通块。 所以考虑把环从大到小排序。 B 有 \(\{1, 2, ... , n\}\) 的所有非空子集,划分为两部分,对于在一部分的两个子集,他们的并一
阅读全文
摘要:B 你可以进行以下的操作:选择一个点染白色;此后每次染有白色点相邻的,且 \(a_i\) 最小的点。 \(q\) 次询问每次给出 \(p,k\),问有多少种选择点的方案,使得 \(p\) 是第 \(k\) 个选到的。 \(a_i\) 是排列。\(n,q\le 1e5\)。 设 \(l=p-k+1,r
阅读全文
摘要:B P6563 [SBCOI2020] 一直在你身旁,\(n\le 10^5\),\(c_i\le 9\)。 考虑利用 \(c_i\le 9\) 的性质,那么最后答案很小。 我们原本是计算每个区间的答案,同时区间答案具有单调性,那么考虑把答案放进状态里即可。 即维护 \(f_{l,ans}\) 表示
阅读全文
摘要:B 维护长度为二的次幂的数组,支持单点修改,区间和,全局执行以下三种操作之一: for(int i=0; i<n; i++) b[i]=0; for(int i=0; i<n; i++) b[i()x]+=a[i]; for(int i=0; i<n; i++) a[i]=b[i]; ()里为或,且
阅读全文
摘要:A 已知 \(n\) 边形的一个三角剖分,你可以进行若干次“城市建造”操作,可以选择三个点并新建一个点为这三个点的内心并连边。构造方案,使得城市建造次数最少,且新图可以划分为两棵树。 只需要进行一次城市建造操作,就可以使边数变为 \(2n\),点数为 \(n+1\),显然即可划分。 考虑取出一个三元
阅读全文
摘要:A 一棵树,对于 \((x,y)\),定义 \(joy(x,y)\) 为通过有限个简单路径两两相连,使得 \(x\) 走到 \(y\) 的最短的简单路径长度的最大值。对于所有 \((x,y)\) 求和。 我们至多只会找两个中转点,对于 \(x,y\) 各找一个。 根据经典结论,距离树上某个点最远的点
阅读全文
摘要:B 可以将一列的算式看成 \(u\to v\) 的一条边,其中 \(u\) 表示其所需要的进位,\(v\) 表示其进位。 那么不难发现我们要求的是 \(0,1,2\) 三个点,\(0\to 0\) 的欧拉回路个数,其中最后一条边满足都不是 \(0\)。 考虑 best 定理,其中求生成树个数可以直接
阅读全文
摘要:A 有 \(n\) 透明胶片,其中有若干位置有字符;没有字符的部分是透明;构造一种叠放方式,使得从上往下看构成字符串 \(s\)。有字符的位置 \(\le 2e5\)。 这是一个拓扑序问题。考虑从上往下放,某个胶片能放的条件是其与 \(s\) 不同的位置已经都被放了。 那么考虑记 \(f_i\) 表
阅读全文
摘要:B 求长度 \(\ge k\) 的区间去掉前 \(k\) 大剩下权值和的最大值。\(n\le 1e5,k\le 100\)。 一个比较暴力的办法就是维护出每个区间的答案,考虑一个位置什么时候被扣掉。 首先计算出左边前 \(k\) 个与右边前 \(k\) 个比 \(a_i\) 大的位置,然后考虑匹配,
阅读全文