2024.5~6 训练日记

可以秒杀的题。

思考一会儿后可以秒的题。

需要较长时间思考的题。

看题解、稍加指点就会做的题。

看题解后需要较长时间消化,甚至现在都没有完全理解的题。

题目后面会写一点评价与感悟。按照 Linshey 意见,一套模拟赛1 题。

日期范围:5.196.30。总计过题:116


5.19#

当天过题数:11

P5164

solution

简要题意:给定 02n1 这些点,对 i,j 满足 |popcount(i)popcount(j)|=1 连边。若这个图有欧拉回路则称 n 为好数。

输入 m,输出 [1,m] 的所有好数。

注意到有欧拉回路当且仅当每个点度数为偶数。考虑把所有 popcount 相等的点缩成一个等价类 Si,其中 |Si|=(ni)

考虑 Sk 中点的度数,应为 (nk1)+(nk+1)。于是 0kn,2(nk1)+(nk+1)

k=n 得到:2(nn1)2n

又得到:ij(mod2),(ni)(nj)(mod2)

由于有 (n0)1(mod2),(nn1)0(mod2),2n,于是推出 k,(nk)k+1(mod2)

移项:11k+1(nk)1n+1(n+1k+1)(n+1k+1)(mod2)

于是 1kn+1,2(n+1k)

应用 Kummer 定理,有 1kn+1,(n+1)k 的二进制计算中不会退位。

于是 n+1=2m1n=2m2。枚举输出即可,记得开 ull


P5167,考虑从尾到头的 dp,由于 gcd,and,or 的性质,会分成 O(logV) 个区间转移,由于 dp 没有单调性,线段树维护区间 dp 最大值即可,复杂度 O(nlognlogV)

P5165,记 E(i) 表示 i0 的期望步数,写出 ii1,i+1 的关系,推推式子即可。


P5169,妙妙题!考虑 uv 的一条路径的 xor 和应为其 dfs 生成树上路径 xor 和与树上若干环的 xor

注意值域很小,用线性基求出 S 表示若干环 xor 能表示的数的集合,记 su 表示 u 到根路径上的 xor 和。

[xt]f(x)=i=1n[si=t],[xt]g(x)=[tS],则询问 t 时的答案为 [xt]f×f×g,其中乘法为 xor 卷积。做 FWT 即可。


CF1188A2,解法请自行阅读题解。

CF1658D2,考虑枚举所有可能 x,然后用 trie 数求下 xor x 的最小最大值看是否为 (l,r) 即可。

P5166,没想出这题太唐了。考虑连成的 deg,就是求区间入度为 0 的点的个数,修改为区间入度 +1,线段树维护即可。

ABC354G,考虑先把包含关系连边,连出传递闭包,然后欲求其最大权独立集合。考虑把每个点拆成左部点和右部点,原图中有连边的这里左向右连权值 的边,Si,iT 连权值为 ai 的边,则答案为 ai 减去最小割。

AGC031D,写出前几项找规律,具体看题解。

P8633polya 定理板题,枚举置换计算即可。

ABC284H,前置题目:P4128,改下式子满足每一个数都要用到,推下容斥即可。注意这题是任意无向图不是完全图,应乘一些 2 的幂次描述每个置换环都有/都没有边。

5.20#

当天过题数:4

P3766,随便推推式子,k3 暴力,k=2n 小的暴力,否则积分估计。

ARC178C,想象把 b 排序推个式子,做个种类数不大的背包即可。

P10515,你怎么知道我不会求阶?太唐了。转化为求模素数阶,试除 n1 的质因子判断即可。

CF346E,妙妙题,用类欧思想,请自行阅读题解。

5.21#

当天过题数:2

P3973,推推式子,转化为 P4174CF1082G 这对双倍经验。

CF809Cthuwc2024 T1 类似题目,请自行查看题解。

5.22-5.23#

生病。

过题数:1

P10517五倍甚至四倍经验,圆方树板子题。

5.24#

当天过题数:7

ARC175D,简单题,考虑每个点处 LIS 和它父亲处的关系,打上 0/+1tag,转化成选若干 siz=m,注意到贪心的从大到小选一定优,构造随便构造一下就行。

AGC020,简单 bitset 优化背包。

P10531,结论题,请自行阅读题解。

P10527,幽默结论题,请自行阅读题解。

P7670双倍,简单题,考虑如果 ? 个数很少,则枚举填 0/1 即可,然后若 0/1 的个数很少,可以考虑容斥加减子集/超集和即可。由于抽屉原理,复杂度为 O(L2L+Q2L/3)

P3320,比昨天那个P10517还板。。。写这个纯纯为了博客找例题。

P5168,缝合题,单 log 做法唐了没想到,请自行阅读题解。

5.25#

当天过题数:5

P10524,请自行阅读题解。

CF1681F,这种套路见一次不会一次。详见博客

P5571,注意到 O(n3) 的时间能过,只需优化空间,对面积做个值域分块即可。

P7216,正解太难写了,写了乱搞。

P2675shaber 题,为了调整状态做的。

5.26#

当天过题数:8

P5296,挺典的一个矩阵树转化用多项式当边权,难点在于实现?

ABC355F,经典的 MST 性质题。

P3561,结论题,参考竞赛图强联通分量研究,但是味道香,耐调王。

P5934,结论题,能在最小生成树上当且仅当 <L 的边加上后 u,v 不联通,跑最小割即可,最大生成树同理。

P2757CF452F 双倍经验。妙妙题,请自行阅读题解。


CF1726E,感觉其实在能力范围内,但是差点底力。

solution

排列依然是考虑置换环。注意到除了大小为 1,2 的置换换,只能有形如 p(i)=j,p(i+1)=j+1,p(j)=i+1,p(j+1)=i 这样的四元置换环。相当于 i,j 要恰有一个反着匹配。

首先记 fi 表示长度为 i,只能有 1,2 元置换环的方案数,这时容易的,直接 fi=fi1+(i1)fi2 递推即可。

然后枚举四元置换环个数 i,考虑此时 fn4i 的系数。首先从 n 个数中选 2i 个相邻对,然后配成 i 组,然后对对每组选定前后顺序。

n 个数中选 k 个相邻对,相当于在 [1,n1] 中选 k 个不相邻的数。考虑两个之间的差,相当于选 k 个正整数,使得除了第一个外其他都 2,且和不超过 n1 的方案数。

这是经典问题,枚举和,答案为 i=0n1(i(k1)k1)=(nkk)

配成 i 组,然后对每组选定前后顺序。考虑从 2i 个数中选 i 个当左部点,对剩下 i 个任意排列,即 (2ii)×i!

于是 ans=i=0n/4(n2i2i)(2ii)i!fn4i,复杂度线性。


P4370,简单题,看到前 k 大直接上优先队列,考虑如何比较两个组合数,取 ln 即可,每次取出 (nm) 的时候加入 (n1m) 即可。

CF980E,我贪心想假了。钦定 n 为根,正确的贪心是从大到小考虑选上的数,由于它选上了它到根上的所有点都必须选,于是若剩余足够直接贪心选取它到根的路径上所有点即可,单点加、到根的链和转化为子树加、单点值,树状数组维护即可。

5.27#

当天过题数:2

CF1416C,水的,建出 trie 数,按位考虑,做个归并排序然后每一位单独选最优的即可。

P8511这题做不出来是绝对不应该的!考虑很多答案都是全局异或 max,设构成全局 max 的两个点为 u,v,则只有 u,vroot=1 的路径上点答案有变化,对这每条链暴力加点,trie 树维护:插入、查询 xor 一个数 max 即可。

5.28#

当天过题数:2

任意基DFT。换基罢了。参考,我推的式子和这个大差不差。

CF798D,牛牛构造题。

5.29#

当天过题数:1

P10283,困难题。

5.30#

当天过题数:1

CF1863F,困难的,先考虑立方区间 dp,然后考虑条件,转化为 highbit 相关,做到 O(n2)

5.31#

当天过题数:5

CF1268B,猜结论即可,证明回头再想。

P4309,经典的排列 LIS 交换两维,用 rope 维护一下插入即可。

P4484,杨表板子(疑)?学习科技即可。

loj 6051,推式子 +FFT,在了解杨表的情况下没啥难度。

gym102538D,依然是会了杨表就会的题,没啥好说的。

6.1#

当天过题数:7

vp thupc2024 决赛ICPC2024 Xi'an I

P10543,注意到最后情况为一条路径加若干散点,考虑钦定路径为最短路,考虑剩下点个数的奇偶性,正确性请自证。

P10541,注意到本题为P2762加上可研发的条件,把技术拆一遍点,和那题类似建图,自己思考一下咋连边跑最小割。

P10548,要思考的挺多的,大概就是对于所有 S 计算 S 集合中所有行星共线的概率,然后子集反演容斥下。中间式子自己推咯,有个小 trick 就是只需判断所有行星是否和集合中的第一个行星共线。式子中有个 lcm 难处理,需要分解质因数算幂次。慢慢写吧,我赛时被创了。


P10554shaber 题,注意到 k<n 于是必有一行没选,枚举这行,然后跑 bitset 优化一下即可 O(n3w)

P10556,对于每个 ai 枚举公差贡献即可,注意公差可能为 0,要特判 i=1,复杂度线性对数。

P10562,注意 a,b 很小,枚举,先出直线解析式,然后对边界情况暴力判断即可。

P10558,简单博弈。

6.2#

当天过题数:3

P5548uoj#450 复读机加强版,请自行阅读题解。

P4423,我是乱搞大神啊!随机旋转一定角度,然后按 x×y,x,y 分别排序,计算排序后下标距离小的几个点的周长即可。

P6247,最有效率的一集,一样的乱搞方法直接过了。

6.3#

当天过题数:7

P10559,需要对于根号分治做此类问题有很深刻的理解,对边定向,做到 O(qB),其中 B=10

P10550,贪心一下,然后就是二维数点板子题。

P6788,推式子题,没啥好说的,建议学习一下 O(n2/3) 的做法。

P6860,发现满足条件当且仅当 (a,b)=1ab(mod2),然后推一下式子杜教筛即可。

P4988,推式子 +exBSGS,板子题。

P6800,和前几天写的 任意基DFT 一样的。

P6197,曾经是 shaber 卡常题,随便推推式子就行了,经典斐波那契状数列结论了。

6.4#

当天过题数:2

P5271,牛子构造题,考虑 k 维,每维四则运算 modp 的向量,寻找若干不同且没出现过的 (x,v) 对,构造 {x+kd}(0k<p) 即可。

loj 6098,切比雪夫转曼哈顿板子题,没啥好说的。

6.5#

当天过题数:2

loj 6241,被 tag 诈骗了,唐唐。

P4233竞赛图哈密顿回路这篇文章知识加上多项式推式子。

6.6#

当天过题数:1

loj 6358,很好的容斥 + 二项式反演题,式子有点小难推。

6.7#

当天过题数:1

loj 6271,很好的单位根 + 矩阵树题,使我的代码旋转。大晚上写这东西崩溃了。

6.8#

打了 The 3rd Universal Cup. Stage 1: St. Petersburg,场切的题都太水了,只看做 1 题。

当天过题数:2

qoj 8790,很好的随机化题。

6.9#

当天过题数:7

CF1592E,枚举 > 的最高位,注意到长度一定为偶数,观察性质即可。

qoj 8781,赛事蠢蠢。考虑 bitset 预处理 fi,j 表示 pi<pi+j,然后需要维护连续 m 个的 and,按 m 分块,每块处理 pre/suf 即可。

P10542,在面对这道题时脑子会莫名犯蠢,不知道为什么。写出 dp 式子后根号分治即可。

ABC321G,很好的容斥题,不过多描述。

CF1889D,很好的基环树思维题,注意到基环树的环是无用的,消环弹栈。

qoj 8794,优美的构造题,限制比较死,建议自己思考。

P6078,简单生成函数题,注意时空很小,算贡献即可。

6.10#

当天过题数:5

P9896,基础的 EGF 练习题,都到现在了当然得熟练这种手法了。

P4152,难点在于处理莫反后的式子,找到方法整除分块,正解的做法感觉上是有黑的,但很多人卡常假做法过了。

uoj 62,很好的莫反推式子题,挺新颖的形式,值得总结一下

ABC317G,二分图完美匹配的结论好题啊,很好的套路。

AGC012D,其实就一简单题,自己蠢了。

6.11-6.21#

备战中考。别问为啥做那么多题,考完那天做的。

打了 The 3rd Universal Cup. Stage 2: Zielona Góra,场切的题都太水了,只看做 1 题。

过题数:6

P10597,生成函数水题。

P10588,借此题向神鱼请教了整式递推,这种题以后也要熟练掌握,题解

P10636,难点在于找到优美的表示式子,我推的式子全部都是不可做的。找到后就很简单了。

P10594,难点在于读懂题目,计算这个式子还是很简单的。

P10640,不好评价这题,鉴定为 MO 题。

6.22#

中考完合法划水 1 天。

6.23#

当天过题数:2

ABC359G,当做虚树练习题,练手新的虚树构建方式。

loj 6044,很好的 prufer 序列计数题。

6.24#

当天过题数:2

校内模拟赛 ×1

P10592,容斥的部分有点小文章。

6.25#

当天过题数:6

vp The 2nd Universal Cup. Stage 28: Chengdu

P9527,牛牛套路。

AGC004D,小思维题。

AGC015D,太困难了!

P10591,很牛的容斥题啊!

CF1338Egie 图好啊!

6.26#

划水 1 天。

6.27#

当天过题数:6

P10648,简单启发式合并题。

P7428,很深刻的题啊!

P10643,和上题类似的,会了上面就能很快会这个题。

CF949E,妙妙题。

P10647P2088P4404P3419SP688,五倍经验!妙妙贪心题。

ARC105E,发现最后一定是 1,n 分居两个完全图中,然后写出式子,分讨 1,n 连通块大小奇偶性即可。

6.28#

当天过题数:2

CF303C,绝世好题。

P7360,推式子好题!重要的是了解了 von Mangoldt function

6.29#

打了 The 3rd Universal Cup. Stage 3: Ukraine,场切的题都太水了,只看做 1 题。

当天过题数:6

CF165E,简单高维前缀和题。

P10663,套路题。

AGC009E,困难题。

CF1982E,想到了就是妙妙题,我想更麻烦的方法了。

P10598,网络流部分处理很新颖,计数部分纯粹是自己蠢了。

6.30#

当天过题数:3

验数论题 ×1

CF1144G,神秘构造题。

CF1693D,和上面那题有点类似,但有个分治做法很神仙啊!

posted @   HaHeHyt  阅读(397)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 使用C#创建一个MCP客户端
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列1:轻松3步本地部署deepseek,普通电脑可用
· 按钮权限的设计及实现
点击右上角即可分享
微信分享提示
主题色彩
主题色彩