考试总结 2024Oct-Nov

haozexu / 2024-11-17 / 原文

考试总结 2024Oct-Nov

前言:太懒了,不想每次都单独写。

\(\def\EZ{\textcolor{#51af44}{\text{EZ}}}\EZ\) 表示简单,10分钟内就能想到。
\(\def\HD{\textcolor{#3173b3}{\text{HD}}}\HD\) 表示中等,能独立想出
\(\def\IN{\textcolor{#be2d23}{\text{IN}}}\IN\) 表示困难,独立思考能想到 \(50\%\) 以上
\(\def\AT{\textcolor{#383838}{\text{AT}}}\AT\) 表示非常困难,独立思考只能想出 \(50\%\) 以下

题目按作者的主观难度排名。

20241024

  • T1 \(\EZ\) 小清新hash题

  • T3 \(\EZ^{+}\) 直接折半搜索就好了,考场想到折半,但是没有细想,因为 T1 耗时过久,如果是正式赛加 30min 肯定能出来

  • T2 \(\HD\) 已经转化为背包,一个十分重要的提示,如果某一个问题已经转化为背包,那么就不可能有多项式的优化,只可能是减小值域,因为这是一个 NP-Hard 问题 。本题就是需要注意一个答案的范围。

  • T4 \(\HD^{+}\) 一个巧妙的答案转化,得到结论。但是我打表打出了错误结论,这是为什么呢,因为我没有把所有方案都输出,只输出了其中一个最优的结果就是最后一个,结果以为是逆序,如果都输出就会发现其实基本上全是一样的,而只有一种特殊情况会出错。

总结:还是比较成功,但是 T1 做太久而且缺 30min 导致每一题都很有思路(基本只差最后一步那种)结果每一题都没 A 出来。

20241105

  • T1 \(\EZ^{+}\) 整除分块+卡常。值得注意的是猜了很长时间的整除分块公式(T=1h,猜出来了),对状态影响非常大,下次不应该再犯,应该推导,其实十分简单,被之前讲师讲的什么基本和组给蒙了

    \[\begin{aligned} &\left\lceil \frac{n}i\right\rceil=m\\ \iff& i(m-1)< n \le im\\ \iff& \left\lceil \frac{n}m\right\rceil\le i\le \left\lceil \frac{n}{m-1} \right\rceil-1 \end{aligned} \]

    注意右界本身就是取不到的

  • T2 \(\HD\) 计数dp+卡常。写出正确的方程,但是卡常没完全卡完,还有一个可行性剪枝没有加,加完之后总和计算量正确。

    正解是倍增

  • T3 \(\HD\) 如果会李超线段树,比 T2 还简单

  • T4 没看

20241107

  • T1 \(\HD^{-}\) 哪个 duliu 第一题放这个,性质注意到了,后面的贪心错了。

  • 【MARK】T2 \(\IN\) 非常巧妙的概率 DP,不知道这种转换怎么做出的

  • T3 \(\HD\) 大模拟,难写

  • T4 -26min 的时候改题,根本没看。

20241108

  • T1 \(\EZ\) 可给每一行打一个标记,维护这是原来的第几行/列

  • T2 \(\HD^{-}\)

    请出我们今天的降秩时刻(play了2h被制裁了):

    完全是错误的,注意到链长至多 3,但是误以为算出范围之后直接枚举就不会互相影响了,实际上是错误的,例如

graph LR; 1--->3 2--->4

显然 \(1\) 的可选集合是 \(\{2,3\}\)\(3\) 的可选集合是 \(\{1,2\}\)

但是,\(3\)\(2\) 只能在 \(1\)\(3\) 的时候取到。

所以直接枚举值是错的。应该确定 \(a,b,c,d\) 的取值之后再检验。

那么检验就是给每一个点分配一个权值。这个图很简单,链长最长为 3,所以链头填 3,链尾填 1 肯定可以,\(O(n)\)\(a,b,c,d\) 检验一下即可。

爆搜剪枝跑 \(80\%\),难泵。

就这也能过大样例???

  • T3

20241112

  • T1 \(\HD\) 贪心

  • T2 \(\IN\) std 用了广义串并联图,考虑 Grimgod 的一种新想法:

    注意树的情况是非常好做的,考虑点双缩点,这个时候:

    钦定一个点作为根,在缩点后的树上 DFS,对于每一个点双,暴力枚举其中度大于等于 \(3\) 的点的颜色并判定,其余度小于等于 \(2\) 的点显然有解。

    对于与这个点双儿子连接的内部点,如果它选了颜色 \(c\),那么就禁止儿子与当前点双连接的内部点使用颜色 \(c\)

    可以说明,如果只禁止一个点使用一种颜色 \(c\) ,那么不会对答案产生影响,因为如果存在一种方案使得这个点使用了颜色 \(c\),那么只需要把颜色依次轮换一位 \(1\to2,2\to3,3\to1\) 就能够获得合法的方案。

    考虑一个点双内度大于 \(3\) 的点的个数,满的构造一定是在满二叉树上进行的,可转化为覆盖问题,如果一个中间的点要贡献,则它两个儿子里面都有一个被连接的点,考虑叶子最少也有 \(\mathcal O(n)\) 个两两连一个则需要 \(\frac{n}2=k\) 条边,即 \(\mathcal O(3^{2n})\)


    UPD 考场上被否决的想法差不多是正解,现在考虑差在哪里:

    因为主要是枚举之后怎么确定其他的点,这一点感觉还是不好做,因为题解是广义串并联图。

    还有本题搜索剪枝可过,其他乱搞也有较高正确性(就我的似了是吧)

  • T3 \(\HD^{++}\) 差一点点,注意到树高和树的个数是不超过 \(\log\) 的,但是没有予以重视,在考虑更新 DP 值的时候以为只能 DDP,没有考虑暴力跳父亲,也考虑到了扫描线,但是没有考虑到删除左端点就是删除根,最后一步优化还是容易做出的。

  • T4 \(\AT\) 由于笛卡尔树随机时高度期望 \(\log n\) ,证明考虑 Treap 的复杂度正确性。倒着做相当于每次删除根,可以用 FHQ-Treap 的方式合并,随机情况下复杂度是正确的。

    正解很麻烦。