2024暑期第二次集训总结(202408)
坐标 HNcs
08.12
身体不适,请假在家,随便写写,把当天任务写了一下,结果你谷 RMJ 炸了,直接躺平。
08.13
上午原定 9:00-12:00 出去比赛,让我们 8:00 到,到了之后又没事做,直接与同学联机 MC ,后面开考,以为是 csp-j 难度,结果 红+红+下位橙+红,14 分钟秒了。(抽象)
回到机房赶上思维训练,看了看题目,没时间写了,随便写了写就交了。
下午补题,先把 T1 写了,一个拓扑排序的变形题,把取小球的条件转化一下就好了。看 T4 过的人多,去看了看 T4 ,首先把裸的 DP 方程想出来,发现可以用矩阵快速幂加速地推,把板子一套 A 了。
08.14
上午 CSP-S 模拟,T1 没什么思路,随便打了个暴力,T2 看了看,感觉和 23 年的 CSP-J T2 有点像,开始画图验证想法,后来发现好像可行,就写了个贪心。T3 忘了,T4 是个图上问题,但只想到了无解与无穷解,就没打。
中午出成绩,T1 一堆人暴力 100,纷纷吐槽 p**k 的大水数据,T2假了,后面忘了,就这样奇迹般的拿了个 rk3,(抽象*2。
08.15
由于你谷的问题,在 Vjudge 上做题,题单链接:https://vjudge.net/contest/648631
大致看了一遍,是 DP 的题单,T1 是个比较简单的树形 DP,T3 多重背包板子题,T4 主要是状态的设定,我是用 \(f_{i,j}\) 表示以 \(i\) 结尾公差为 \(j\) 的等差数列个数,把状态一写,再跟着题目一步一步推,方程就出来了。T5 的方程其实还挺好想的,只是要注意最后答案的统计范围会超出 \(n\)。
08.16
真忘了……(捂脸)
这就是不及时写总结的后果。
08.17
上午又有 CSP-S 模拟,T1 感觉可做,背包套背包,但脑子一抽方程写错了,调半天没找到,就写的暴力,T2 感觉能贪,手推了几组数据发现假了,暴力++,T3 一上来就什么期望,直接放弃,T4 有张图片,感觉可行,想用二分快速查找附近满足条件的,结果写一半发现没单调性,又是一个暴力。
最后得分:85,中等偏下吧
吐槽:题目背景是真抽象:点此观看
08.19
在Vj上写图论的题:https://vjudge.net/contest/649525
T1 并查集,判联通块即可。T2 其实每个环只用建一个站,所以可以缩点,最后方案数的话直接根据乘法原理得出。(每个环上与最小值相同的数量)T3 最小生成树,用贪心的思想,在不考虑特殊边的情况下,最优是从最小点向所有点连边(菊花图),再加入特殊边比较大小。T5 拓扑排序,去边就相当于给一个点的入读建议,所以依次把每个点的入度减一,如果没环输出 YES,如果循环完了还有环就输出 NO。
08.20
上午思维训练,T1 题目理解错了,以为是贪心,后面才发现是背包,T2 是一个讲究思维的,需要逆推,但码量少,T4 开始以为是组合数学,结果又是 DP。
思路其实都不是很难,但思考方向错了就一错到底了。
08.21
上午 5、7、8 联考(我在7机房),T1 是一个简单图论,写了个并查集,测了下大样例过了 预期 100,转战T2,T2 题面有一点绕,想了一会写了个 \(n^2\) 枚举加差分统计,预期 50,T3 算半个两问,第一问就是叶子节点数,思考第二问,对于每棵子树,它所能获得的最大分值为子树上的得分点与叶子节点数量的最小值,写完测大样例,惊喜发现过了,预期 100。T4 正解想不到,去拿 50 分的部分分,用一个窗口枚举移动的位置,取最大值相减即可,预期 50,T5 是问序列中有多少个子区间满足至少有一个只出现过一次的数的区间数量,用 \(n^2\) 暴力枚举区间,在用 f 数组标记出现次数,最后统计答案,预期 30。T6 没一点头绪。总分:100+50+100+50+30=330
最终成绩:214,T1=20,T2=50,T3=85,T4=40,T5=9,T6=100,排名:14/63。
08.22
Vj做题:https://vjudge.net/contest/650409
T1 要找出最大子矩阵,最基础的想法是枚举每个长方形作为最左边的一块,再处理长度,我们考虑在遇到下降的长方形的时候,实际上是会终止操作的,于是我们用一个单调队列来处理长度,并保证单调性。
T2 是种类并查集和离散化的结合,离散化用来将数据映射到能统计的范围内,再用并查集维护关系。
T3 虽然 \(a_i\) 到了 1e9,但是因为要出现 \(a_i\) 次,所以能够被统计入答案的 \(a_i\) 是小于等于 \(n\) 的,我们考虑前缀和的优化,对于一个 \(a_i\),如果它在整个序列中出现的个数都没有达到 \(a_i\) 次,我们统计答案的时候就不用去遍历它,因此我们用一个新数组记录可能是答案的数,对于每次循环做前缀和并求解。