第八届山东省省赛总结

时间:2022-05-22 20:01:09

开幕式

一大早坐车来到了青岛排队科技大学(误),吃完午饭就去了开幕式,比较简短,不过「山东离青岛很远」那个梗倒是被玩火了,大家在一片欢声笑语中退场去打热身赛。

热身赛

刚开始入场,每场都是一个小教室,我们的位置在大概讲台附近,机器可能也是讲台机,赛前调试出了不少问题,幸好赛场工作人员比较快解决了问题,否则真是连 PC^2 都不知道怎么开。开赛以后很快敲出了一个 B 题,然后 C 题是简单的字符串处理。最后到 A 题,一看不太好做,PBH 表示反正是热身赛,不如让我先暴力 T 一发,于是他就暴力了,然后竟然就,就这么过了,一下子滚到榜首,留下三人互相傻眼。20 多分钟 A 完题之后,由于时间比较充足,大家便按照事先规划好的轮流测试环境,几个问题基本都该测的测,该问的问好了,然后就边开着玩笑「RP 都用光了」边离场到楼下逛了。这个时候大家还是都很有信心的。

晚上

晚上的饭比中午的盒饭好多了,吃完了大家便组队去购置吃的喝的,回来开了赛前准备会,满满一屋 40+ 人,想起了去年这个时候,感触还挺多的。

回去休息了一会,三个人又开了个小会,总结了一下前面比赛的常见失误、注意事项以及如何配合的一些细节,大家都对明天拿金斗志满满。

正式赛

到了正式赛,没有了去年这个时候兴奋中带着紧张,三个人很稳地按照节奏开题,分题。开始 PBH 看 A,Stone 看 C,我看最后一题 K。PBH 很快表示 A 是个博弈不好做,我大概略了一眼 K,像是个模拟,就交给 PBH 去敲 K,然后继续向前翻题,看到了 G,题面超短,只有一行,是个数学题,马上交给 Stone 去敲,很快秒出,一发提交 get 了一个 WA,他抓紧检查了一下,发现一个下标写错了,改了一下,我叫他再检查一遍代码,无误后再次提交,WA again,这时节奏有点乱,开场 6 分钟了没过一个题,只能尽快打印出来换我敲 I,打开 Eclipse 开始上大数,让 Stone 帮我快速算了一下规律,验证无误提交,终于 get 了第一发绿色的 Yes。

I - 1/14

正好就在我们 A 这个的前后,裁判终于确认了 G 题题面有误,1e9+7 硬是给打成了 1e8+7,我们抓紧改了一下 G,果然一发就过了。

G - 2/6(重判后第二发的时候就过了)

接下来 PBH 给我讨论的了一下 J 的解法,大概确认没错就去敲了,然而 Get 了一发 WA。无奈只能打出来给 Stone 去敲 F。不过 F 就没那么容易了,交了大概有 2 发都 WA 了,Stone 的状态有点崩,开了俩题每个都有俩罚时,我们安慰他别慌,打出来继续找错。这时早就找到 J 的一个漏洞(少了个等于号)的 PBH 也正好想来再试一发,加上以后过了 J(遗憾 FB 没了)。

J - 2/44

然后 Stone 继续调 F,刚才的暴力做法都 WA 掉了,他表示实在是看不懂示例的一个 “YES” 怎么出来的,于是我们帮他重新读了一遍题,两个人都确认了最终的正确的题面后,Stone 改了两发终于过了 F,此时出 4 题已经比较晚了,滚到了银牌区。

F - 4/73

接下来就是我们漫长的卡题挂机时间(长达 3 小时之久),K 题我和 PBH 感觉像背包,敲了一发过了示例,然而 WA 了。而 C 题经过 PBH 分析后是一个杨辉三角,需要用大组合数取模,Stone 上了一个 double 的函数试一发,果然毫无悬念的 WA 了,一时连大数都上了,然而本地就炸了。这期间我们分头把除了 B 题以外的题都读完了,感觉只有 A, C, K 可做,于是暂时弃掉 C 之后就去换 Stone 敲 A,越敲越复杂,判断的 if-else 都快摞到 60 行了。而 K 题我们也试了几种姿势,都以 WA 告终,这样 A, C, K 来回调着调着,几个小时就过去了,眼看了榜首都 7, 8 题了,我们只能看着一点一点朝着铜滑去。

封榜后,气氛变得愈发压抑了起来,看了一下校内的队全部止步 4 题,大家的状态也都开始烦躁了起来。突然我想起来了好像听到过逆元这个词,便跟 Stone 说了一下,他马上好像灵光乍现,瞬间弹到机位上开始改 C,T 了一发后跟 PBH 商量了一下,可能需要预处理,处理了一下又交了一发,正当我们默默等 WA/TLE 的时候,突然一发绿色的 “Yes” 弹了出来,惊得我们差点从凳子上摔下去 ^_^

C - 4/254

过了 C 以后,全队士气大振,对我们来说算是圆了一直没能封榜后过题的遗憾。看了一眼时间还有 40 多分钟,我们便决定分头搞 A 和 K。然而赛后才知道这两道题当时的代码已经和对的差不多了,不过思路上还是差了关键的一个推论,所以离 AC 还是相去甚远。最后在各种瞎改后也没过这两道题,离金只差 1 题,遗憾 5 题打银收场。

闭幕式

到了闭幕式,默默啃着面包(闭幕式的竖屏滚榜真是没谁了,千古奇观)。虽然终于拿到了第一块奖牌,但是没有到达预期的目标,大家都比较失落。

赛后总结

一句话总结

还是太菜了。
We good vegetable a.

主要问题总结

  1. 队内数学薄弱
    这场有半数题都是数学题,而我们队内刷数学题的只有 Stone。赛前 PBH 在主攻字符串处理、图论以及 DP,而我负责数据结构、部分图论以及 DP。数学输出的极大缺失让我们在前中期卡 C 题太久(现在看来分明是简单题了),导致勉强出到 5 题后也没有时间再去出其他题了。数学是一大障碍。
    另外 2 个卡手的题:A - 博弈,K - DP 背包,也是由于知识点不够牢固,刷题少。

  2. 策略失误
    这场在 1 小时后的分题开题已经完全被卡题打乱了,卡了 C 题后全队都执着于手头已经有代码的 A 和 K,而且由于想不出什么数据证明做法是错的,更加坚定这两题有机会出的想法,导致封榜后出了 C 之后的 40 多分钟被全部浪费掉。赛后补题才知道如果当时勇敢地放弃掉 A 和 K,提早去开 D 题的话,不难推出来(而且和 C 有一定相似之处),D 题是更有可能出第 6 题的。

  3. 未读完题(又一次)
    上次省赛漏了个 D 题没读,这次也是一样,漏了一个题面很难懂的 B 题,赛后读懂了这个题以后很容易就 A 了。其实由于跟榜心理,大家可能都不会选择去开 B,但是其实这个 B 题的难度甚至小于第四简单的 F 题。

补题记录

赛时 5 题,赛后半天补出来了 5 个,还差最后一个 H 题(可见有 10 道题是至少接触过的知识点)。

  • A - 博弈 (听讲解或讨论后补出)
  • B - 打表找规律,题意难 (30 min)
  • D - 数学+推 (20 min)
  • E - 01分数规划 (45 min?)
  • K - 背包,排序规则较巧妙(听讲解或讨论后补出)

最后的一句话总结

刷题才是硬道理。
More practice, less gg.