CSP2020 二轮游记

11.6

去看考场。

我的两组座位都有一遍没人,感到了几丝自由。

电脑是 WindowsXP,C++ 内没有 Consolas 语言……

J 组考场键盘是藏在抽屉里的,但好像抽屉没法完全打开……

S 组考场的隔板是浅红色木板,很有年代感

总之体验不是很好。

11.7

11.16 作者终于发现自己还留了一个坑,并补了上去。

以下左端时间不一定十分准确。

$08:15$ 到考场的时候状态一般,精神并不是特别地好。

$08:30$ 不过监考人员还是非常负责的,开始比赛后下去检查了每一个人的提交格式是否正确。

$08:30$ 睡眼惺忪打开 pdf。

$08:31$ T1 发现没有以前那么㴇了,不过还是可以快速通过的,5 分钟写完。

$08:36$ 然后看到 T2,???什么玩意

$08:38$ 由于没看数据范围,脑子中不停蹦出「堆」「第 K 大」什么的假算法。

$08:42$ 然后又看到有 $85\%$ 的数据是 $n le 10000$,难不成真的 A 不掉 T2?

跑了跑了,去看后面的题

$08:44$ 看到 T3 光是输入方式就直接被吓跑,然后翻到了 T4。

啊,方格取数,时隔多年再次出现在 OI 考试中(虽然只是题目一样)。

$08:48$ 发现记忆化不好写,就想 DP。

又发现路径不可以往左走,所以就设计了一个以列为最外层的 DP,复杂度 $O(n^2 imes m)$,可以有 70 分。

$09:16$ 把 70 分的 DP 写完了,之后修正了一些小问题。

$09:26$ 回来看 T2,原来 $0 le a_i  le 600$ 啊,那没事了。

$09:39$ 直接甩一个 $O(600n)$ 的做法跑路。

$09:45$ 等到我再次点开了逃不过的 T3,职能硬头皮重新学后缀表达式求值。

一个特殊限制的部分分都不会写.jpg

$10:25$ 只能一步一步把输入处理好,把栈写好,把代码写完。

作为一个有追求的 OIer,怎么能在充裕的时间中放过部分分?

好在几乎没有 bug,很快就通过了大样例,可以得到 $30$ 分。

$10:30$ 不想再继续在这道题耗了,就离开了这个是非之地,开始想 T4 的满分做法。

尝试了很多种办法,但甚至连前两个小样例都过不去。

$10:40$ 开始实际意义上的思考:

  • 可以向上走,也可以向下走,如何排除后效性?
  • 开两个 DP 就可以了。
  • 一个记同一列从上到下递推出的最大值,另一个记同一列从下往上递推出的最大值。
  • 最后在转移到下一列之前,用一个别的变量记录这两者答案的最大值。
  • 注意第一列和最后一列要特判。

然后就想出 100 分做法了?

$11:10$ 改完程序,三个样例都是过的。

$11:15$ 写了个对拍和 70 分的对,拍了上万组数据都没有挂。

剩下的时间几乎没有做别的事情。

$12:15$ 在出考场对答案的时候,我猛然记起,我两个 DP 是存在同一个变量数组的,只不过开 dp[N][M][2] 分别讨论。

我却在 DP 中写的是 dp[i][j][1] 和 dp[i][j][2],我调用了 [2]……

希望程序没事

晚上在信奥题库自测,是 $100+100+30+100=330$,T4 竟然没有 RE?

不过测了好几个地方没有一个是挂的。

其余估分情况:

Luogu nowcoder $100+100+30+100=330$

S 组

$13:55$ 母亲给了一片什么参的含片,结果等到我开始考试了那个味道还在嘴中环绕。

$14:10$ 进入考场旁边的签到教室,人明显少了很多。

$14:15$ 进入考场,结果发现键盘有点难用……

$14:25$ 监考员允许开题面。

扫了一下四道题,有种不祥的预感。

T1 大模拟,T2 二进制,T3 没看出,T4 博弈论。

$14:35$ 极力让自己冷静下来看 T1。

$14:50$ 看了半天,只写出预处理……

$15:05$ 写完 BC 的情况。

$15:20$ 写完小于 1582 年的情况。

$15:35$ 写完所有情况。

$16:20$ 调了半天……没什么用。

$16:40$ 打完 T2 暴力。

$16:50$ 我也不知道哪来的自信(可能是为了多骗点数据水的分),看到部分分直接去莽线段树。

$17:05$ 而且,线段树板子还打完了,甚至没有问题???

$17:15$ 把 main 函数写完,并调完了程序。

$17:35$ T4 的暴力写完了,并马上返回去调试 T1。

结果发现随手写了一个对拍,光是大样例就排出居量的差异。

怎么办?只能调啊。

$17:50$ 调完了预处理的 bug。

$18:10$ 调完了“绝大部分” bug,并在 $10^5$ 组数据中只有 3 组出问题。

$18:15$ 发现 1582 年前,4 的倍数年份都是闰年,就改了一下,再拍只有 1 组 出问题。

$18:20$ 把 1582 年的情况调了一下,十万组数据全过了?

然后就检查了一下文件,今年的 CSP 之旅就结束了。

预估:$100+40+30+20=190$,感觉全世界都比我高。

回家,在信奥题库自测了一下,甚至没有预期的好。

T1 从 $100$ 变成 $60$,T2 从 $40$ 变成 $20$。

不过或许是造数据的人都是随机数据,我的 T3 才在那里有 75 分。

然后是洛谷,结果发现更炸,T1 炸成只有 BC 的分,T3 降为 30。

估计管理员出了一堆链、菊花图数据,然后把我的线段树卡掉。

其实分析一下,线段树常数真的不高,最坏 $O(Q imes sum{C_j} log n)$,平均可能是 $O(Q cdot frac{sum{C_j}}{sqrt{m}} log n)$(这里我不会求,大概吧)。

并且,整体乘以 2 操作复杂度是 $O(1)$ 的。

以下是所有估分情况:

洛谷:$40+15+30+20=105$

信奥题库:$60+20+75+20=175$

牛客:$40+20+70+20=150$

小图灵:$40+40+55+15=150$

好像 T3 就 luogu 卡掉了,或许分数还能高一些。

11.16

出成绩了。

J:$100+100+30+100=330$

S:$70+35+70+20=195$

第一反应:

???我 S 组 T1 和 T2 还多了???T3 也没卡???

可能这是我打的最懵逼的一次比赛吧。

看了看 FJ 的分数,感觉整体水平不是很高,但分数也不会很低。

有两所公立学校都有初一的考生拿到全校最高,并且过 200。

好像市内初三段最高分是一个女生。

技不如人,甘拜下风。

完。

原文地址:https://www.cnblogs.com/zengpeichen/p/13939254.html