CSP-J/S 2024 游记

toolong114514

2024-09-21 21:12:59

Life & Travel

初赛篇

居然换考场了,搬到了番禺铁一。

J

什么是格雷码啊?哎反正都蒙 D 选对了,管这么多干嘛?

不是,完善程序给两个超级板子是什么意思,还有 O(\sqrt{n}) 判断完全平方数是什么鬼?

没记答案,大概能过。

S

不会欧拉图。

谁教你这么写按位或的?

阅读程序什么 [数据删除] 代码,一坨二叉树+神秘双哈希。

为什么完善程序里次短路写了个显式分层图,序列 k 小和搞出一堆奇妙的二分边界啊???

大概 16:15 写完的。

带答案出来用民间数据估了一下,有67。

2024.9.27

出分了,J90.5,S67。

S估的分很准确。

下午发了国控线,都过了,确定晋级。

复赛篇

Day -14

模拟赛把正解的 DP 状态搞复杂了,常数爆炸。

Day -6

不知道什么时候打羽毛球崴了脚,现在才发现。

Day -4

S 组模拟赛扔了4个紫题,连暴力都不太会,摆。

晚上改题时因为错误地更新了 LCA 虚空调试 114514min。

Day -3

模拟赛 T3 的 std 长达703行,完全没有改出来的风险。

Day -2

晚上放了一场 S 组的信心赛。

T1 炸了。

Day 0

怎么还有模拟赛啊,但是下午就放人了。

晚上打印准考证,发现考场改回了大学城广附。

教练开线上会提醒一些注意事项,顺便讲了之前 S 组信心赛的后两题。

讲完改了 T3,但是玄学挂成 90pts,不调了。

Day 1

乘车到了考场。

算起来,这好像是第四次来大学城广附考 CSP了(2021 初赛/2022 初赛/2023 初复赛/2024 初复赛)。

J 组去行政楼电子阅览室考,似乎没从常用的入口进入,人少到以为走错了。

蹭了一部电梯。

8:27 准时下发密码,居然一次输对了。

尝试重新保存 PDF,以便下次打开不输密码,但是多次尝试无果。

简单浏览题面,看上去除了 T4 都挺能切的。

开 T1,扑克牌背景水题,没有推导压力,大概 8:47 签到。

开 T2,dfs 写挂了,改成 bfs 过了。

大概 9:20 测过大样例。

开 T3,好像能写 DP,但是只有暴力分可过。

哎 CCF 你咋不给大样例。

在草稿纸写下数字对应的火柴数量,排除了一些使用显然不优的数字。

观察发现 8 是火柴消耗最多的数字(7 根),于是注意到了 n\equiv0\pmod{7} 的部分分,全部输出 8,获得 20pts。

此时发现多数 n 的答案一定以连续的 8 结尾最优。

尝试对 n\le20 的数据人工打表,但是失败。

n\equiv1\pmod{7} 的部分分构造了一个方案,但是没测(伏笔 1)。

n\le50 的暴力写了,但是一直挂。(伏笔 2)

先弃了 T3。

开 T4,火速写完 r=1 的部分分。

接下来打了一个 O(n!) 规模的暴力,测样例没过,是dfs 漏传一个参数搞的,补上了。

再测样例,调了几下发现 r=1 部分有 bug,火速改好。

部分分的样例过了,获得 15pts。

开始想朴素的可行性 DP,发现带上转移的时间复杂度好像上了 O(n^7),没用。

看到性质 A,想了几个方案,时间复杂度都直接起飞。

倒回去调 T3 暴力,并尝试用暴力打表找规律,最后到结束都没有搞出来,规律也没找。

原本会有 100+100+20+20+20+15=275 的,看上去没了。

出场,听教练说 T4 有蓝。

这是自 2018 年摆渡车以来,CCF 的普及组难度比赛再次出现蓝题。

中午去酒店休息,在去酒店的车上和同学交流了 T3/T4 的做法,发现 T3 的部分分构造错了,规律是打表就能找的。(呼应伏笔 1/2)

下午进场考 S,终于可以一雪去年爆零的耻辱了!

检查文件夹合法性的 checker.exe 寄了,监考员一会儿要挨个替换。

开 T1,随便玩玩样例,胡了一个特殊性质+正常贪心的做法。

测样例,发现特殊性质挂了,删掉特殊性质的代码就全过了。

开 T2,题面稍长但不影响看懂,这不是高一运动学基础知识复习吗

给了必要的公式,没有的话题目难度肯定会上一档。

全是匀速运动的情况很好写,15:14 光速过了对应样例。

接下来写匀加速运动。

测样例时发现两档做法有点小问题,改改就过了,此时为 15:33。

再考虑匀减速运动。

超速区间是好求的,判断是否被探测是简单的,但是第二问不会,拼上第一档暴力,60pts 润了(16:17)。

开 T3,通过枚举状态获得一个很顺眼的 O(n^3) 做法,但是一直卡着过不了。

糊了一个线段树的 O(n^2\log{n}) 做法,但是暴力没调出来,决定先开 T4。

T4 没有头绪,回去继续调 T3。

随便注释了一行就过了小样例??

把唯一的大样例搞下前 4 个测,过了,此时大约 18:21。

想继续实现 O(n^2\log{n}) 的做法,但是时间不够了,开始检查代码。

考完力。

大概有 100+60+35+0=195。

T3 是讲过的原??

T2 [数据删除] 完了。

晚上聚餐,尝试了一点潮汕生腌。

被 [数据删除] 叼了。

大家都人均 300是吧

查分/2024.11.4

省流:挂完了。

S 组共挂:195-160=35

J 组共挂:275-230=45

J 组 T4 因为调试时开了一个过大的 bool 类型数组没删 MLE 了(步了某同学去年的后尘)。

S 组 T2 暴力被卡了 10pts,T3 暴力 DP 没赋初值挂了 25pts。

当时如果和 O(n\cdot 2^n) 的做法对拍应该可以发现。

T3 回家按照当时的 DP 状态一下就秒了 O(n^2) 的暴力,并且调出了维护全局标记的 O(n) 做法。

寄!寄!寄!