【2022-March】杂题乱写
CF1622F
设 ,可以得到
所以要考虑的本质上是 ,直接判定这两者是不是完全平方数并哪项不是删掉即可
对于 的情况,最多也只会删掉 三项,那么先判定序列是不是能删掉 项来做到合法,否则直接给出构造
考虑给每个质因子一个随机权值,那么合数的权值就是其所有出现次数为奇数的质因子权值异或和,判定是不是存在一个 的权值是 以及是不是存在一个 的权值是 即可
设随机向量长度为 时,一个不是完全平方数的数字被异或成了完全平方数的概率是 ,本质上是 ,其中 是某个数字中出现奇数次质因子的数量
在 时 中 有 种,那么正确率就是 ,在 而非 时才可以得到较高正确率
Luogu4240
原式进行简单的和式变换就可以得到:
其中
处理 能做到 复杂度,但是其实 比较大的时候要求的东西在每个询问中都是差不多的,所以预处理 的所有 的乘积并前缀和,每次询问对于 的部分暴力,剩下的整除分块即可
ARC104E
由于 实在是太小了,枚举其全排列,对于 那么限制是 ,否则严格大于
这时候每个位置的选值集合就是本身上界减去前面严格大于的数字,同时还要做后缀
现在限制变成了大于等于,可以使用格路计数的容斥来做,设上界分别是 , 表示走到了横坐标为 的列的方案数(不限制纵坐标),转移就是枚举第一次超出界限的位置即可
显然要暴力算组合数,因为 实在是太小了
CF718E
不难观察到图的直径不超过 ,预处理 分别表示 到颜色 最近的距离和颜色为 某点到颜色为 某点的最短路
不难发现一对 的最短路就是
对于 的情况,选择的中转颜色的点可能是同一个,再 可能产生错误,那么直接冲暴力
否则观察到
否则枚举 考虑小于之并且距离之至少为 的所有 ,使用二进制状压他们的 ,这些 的另外一个属性是他们的颜色
对于两个属性都相同的 到 是相同的,计算即可
CF997E
扫描线,一个区间是好区间的条件是 ,使用两个单调栈分别维护最小/最大值,区间加增量即可
要求的是历史权值之和,使用一个全局加权值的操作实现
由于 处是 致使全局最小值也是 ,那么 “加权值” 的判定就是子区间最小值是大区间最小值
一开始并没有注意到加权值的判定条件,那么写了个暴力过掉了所有 Codeforces 数据,不得不震惊
Luogu7515
先给 任意赋值使得和满足条件,但是不一定在限制的值域之内
定义一种操作 表示给行/列上奇数点加 ,偶数点减一,另一种 表示给奇数点减,偶数点加,通过上面的操作不会改变 的正方形的权值和
设 行上操作进行 次, 列上 次
我们给奇数行/偶数列做 ,偶数行/奇数列做 ,这样子满足了每个 的小矩形都是和不变的
那么限制这时候变成了 的形式,使用 ckmax
式差分约束可以在 复杂度里面实现
UOJ 数据很猛,所以还是要把正环长度缩小再跑(正环长度不超过 就离谱)
Luogu7516
对于一个给定的图 如果 在正图和反图上都能经过不小于 的点到达 的点 ,那么 会对 造成贡献
使用 来算上面的东西,边权变成了每条边现在的标号,目的就是最大化
注意根据实际含义是要倒序枚举中转点的,这时候 是正图可达, 是反图可达
Luogu7520
定义点 在有向图上的受支配集为题目说的点集去掉 ,一个点在支配树上的父亲是它受支配集中受支配集最大的一个
不难先暴力算受支配集,再使用拓扑排序状物来求支配树
每个点的受支配集变化有 其支配树上父亲受支配集变化 和 存在绕过父亲到达之的路径 两种形式
注意不存在一个点满足 “在原图的受支配集里面所有点的受支配集不变的情况下,产生了路径满足经过父亲但是绕过受支配集中其它一个点到达之”(证明是容易的)
那么只需要对每个点判定是不是产生了绕过 的路径即可
求出来 表示 禁止经过后 是不是从 可达以及 表示 禁止经过后 是不是从 可达即可
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律