CCPC-2022-Final(广州) 总结

· · 生活·游记

rk 12/100+

赛前:

赛前一个月基本保持每周一次团队训练(太少了,主要是在做毕设,同时尽量保持一下手感)。

赛前一个周日,我和 cpz 双排了一场 Universal Cup(谴责ckh睡过头就不来了)。

周一到周四全在搞毕业论文,没时间训练。周四下午在整理线段树和树状数组的资料。

Day0:

到酒店已经8点左右。酒店很豪华,房间很大,甚至有阳台,是我出去比赛住过的最好的酒店。

晚上点了份外卖吃,整理了一下毕设的实验就休息了。

Day1:

热身赛

线下赛居然是Windows系统,用PTA的OMS比赛系统和CCPC的打印系统。

IDE有VSC,DEVCPP,CodeBlocks等等。但是没有装WSL,由于OMS的限制,不允许自己装插件,不过基本的code runner是装了的,和平时训练环境差不多。

没有WSL很不好,这使得本地的环境和评测机不一样,所以代码要写的稳一点才好,如果写出未定义行为就很难调了。

一共三道题,只过了一个交互例题。

中间出去参加了一个采访,没怎么写代码。

试机发现评测机还是挺快的,1秒能跑3e8次取模,1e9次乘法。

中午吃了主办方准备的自助餐:人太多了,其实没吃到什么。

下午加训

下午远程参加了队里的组队训练,打了一场省赛练练手。

大概从1点过训到4点。都写了一下代码熟了一下手。

之后和ckh以及cpz去大学城逛了一下吃了晚饭。

晚上确定了一下策略。对于final的比赛,罚时肯定是非常重要的。因为感觉ckh前期题的罚时比较高,所以倾向于让他前期多看题和给做法。后期视情况可以上机写代码。然后我和cpz前期尽可能跟榜。

另外一点就是,ckh上机写代码之前一定要有一个人完全理解他的做法。中期之后,每一道正在思考的题都至少需要确保两个人读过,以及写代码的时候除了写代码的人还要至少有一个人知道正在写什么。

Day2(现场赛):

赛题总览:

比赛情况:

通过:6/13 ACEFJL

排名:12/127

打星:位于金牌区

比赛回顾:

比赛前先下发了每道题的时空限制,我们发现其中EFJ都是1s的评测时间,我戏谑地说了一句这三道题可能是签到题,于是分工各看一道。

之后ckh给出了J的想法,同时我和cpz看了F,期间很离谱的一件事情是,清华大学的“有手有脚”在12分钟就过掉了A。所以cpz也去看了一下A。 之后我和ckh确认了J题的做法,于是他上去写,我在一旁构造一些样例。 $\color{green}【00:49】$ ckh的J $\color{red}{\text{WA}}$ 了 2 次,我造数据和他一起调了一会儿,同时我和cpz讨论出了F的结论。J很快调过了。 $\color{green}【00:59】$ F的结论是对的,cpz写完直接过了。 之后,我主要在看A题,ckh读完A题之后发现cpz最开始给的题意是错误的,于是我们及时修正了。 我感觉A题和陆佳艺出过的一道题比较像,我以为是类似的题。不过想了一会儿,甚至写了一版之后发现完全不一样。耽搁了一些时间。 期间cpz对C有想法,加上榜上过C的还是挺多的,就在想C,我和ckh讨论A,但感觉没有比较好的方法。 $\color{green}【01:59】$cpz和ckh确认了C的做法,cpz写完,我们一起调过样例之后通过。 之后陷入苦战,根据榜单我们确认了在A题和L题开,我们都读过这两道题目了,我主要在想A题,L题我们讨论出了一些初步思路。 大概在 【03:10】 左右我想出了A题的可行思路,在 【03:30】左右配合cpz的举例,确认了思路的正确性,此时ckh在乱搞L题。 $\color{green}【03:54】$封榜前ckh把L过了,期间一起调试了2次。 ckh过了之后我就直接开始写A,因为贪心图论其实并不难写,我写得比较小心,同时保持速度。 $ \color{green}【04:10】$A题写完之后一发就过了 之后ckh在看M,我和cpz看H,很快我们决定all in H题,并且推出了一个看起来没问题的结论,cpz就开始rush写代码。不过最后没来得及调过样例。 ---- ### 部分题解: #### A: 很妙的一个题 【待补】 #### E: 给出一个'c','p','?'组成的字符串,问有多少个子串可能是 $c^{2k}pc^{k}$ 的形式。 枚举右端点统计就可以了,记录前一个p的出现位置,复杂度 $O(n)

一些感受:

这次比赛很好的执行了策略并且成功跟榜。

很幸运,是一场跟榜就能金的比赛。

知乎感想