第47届ICPC沈阳站游记

赛后记录

沈阳站是我第一场正式区域赛 rk95 银牌,上学期打星过昆明的区域赛,战绩嘛 1 题打铁。。。

赛前

前两星期 cf 狂上 200 分,赛前1星期一直在写后缀数组和数据结构题目,前两三天的比赛状态都很差,前一天晚上的atcoder ABC 甚至没做出 C 题。。。总之就是听天由命吧。

赛中

比赛前准备好了所有的资料模板。赛前 10 分钟志愿者刘爷递送了第一份题面。不让看题目,但是封面有题目名字。一眼扫过去 \(DRX\; VS\; T1\) ,这不稳签到题!

比赛开始,我先上机敲头文件和宏定义模板,hls 直接冲签到题,一分钟就把我赶下机了(甚至还没写到 main 函数)。hls 一分钟码完,测了样例提交,2min1A

提交后开榜,打开发现 rk 8,我超,狂喜。然后我继续敲我的模板,敲完模板我看了下 H 题,回文串背景题目,由于不会回文自动机的算法,其他的算法看了几分钟也没啥思路,队友让我先看其他题。(事实是 H 最后 5 / 38)过了几分钟,hls 读完 C 题秒出思路,给翔哥讲了一下,感觉没问题,于是上机很快写完,一发过样例。然后勇敢的交了一发。 21min1A 此时 rk 22。

前期签到居然留在了金牌区,vp 基本都在银牌区的说。然后心态不错,于是看题目很短的 B 题,一眼构造。然后我上机打表,翔哥在旁边划,打出来了表发现很难有规律,此时 B 题并没有人通过。然后就开始坐牢模式。

大约 1 小时时,看榜发现 L 有人过,hls 直接去看,发现酒馆战棋,我超 炉。于是题面很快读完并理解(这就是炉的魅力),然后给我讲了一下,讲完两人分析,复杂度很小,应该是个爆搜大模拟。这就让我想起了今年昆明打星的大模拟。开始上机时,我还嘴了一句 昆明少的大模拟,沈阳打回来!

L 题 dfs 里的回溯写的人很懊恼,好在脑袋足够清晰,优秀的大模拟功底。随便测了样例,发现不对,卡了一小会儿,改了点小 sb 的错误,很顺利的通过了样例。测试了几个随便捏的样例之后也没有啥问题。然后
就勇敢的交了一发,跑了很久,返回超时。两人双目相对,十分懵逼,分析一下 set 应该可以优化掉,算下来优化掉一个 log,但其实也不是很确定复杂度,但看见通过率很高,随便手玩一下复杂度发现也很对。于是又交了一发,秒 WA。

此时我就直接怀疑人生了,hls 上机要重写一个做法,把数组存到dfs参数,会很好写但是常数大,我在旁边继续看旧代码哪里有问题。中间卡了有 10 分钟,感觉是这场比赛最黑暗的时刻。。

然后呢,我就智慧的发现复制代码的地方有一个没有改掉(我甚至复制的时候还说自己要重写,不敢复制代码),%m 写成了 %n 。改掉之后,勇敢的冲了一发,147min3A

过掉 L 之后看榜,发现在 rk 120+,铜中的位置,可能我少演两发就在银牌区了,队友说没罚时就好了,安慰了一下队友,问题不大,银牌肯定还要过一题,还剩 2 个半小时,还有机会!

跟榜去看了 F,其实之前也看过,实在造不出样例,然后让 hls 去打了 F 题的表,我和翔哥在旁边手玩这个题。打表写的也是坎坎坷坷,好在很快就写对了。看了几组数据,找特殊数据发现了一点点不明显的规律。

如果 0 列 和 1 列各自分开,纯净块的贡献十分好算,受这个启发,对着一组 4 x 4 的数据我有了一个猜想,类似于背包一样的对每列做一个物品,有价值和贡献的列个数,手玩一下感觉是可以凑出来的,但没有明显规律上不了机,给翔哥讲了一下之后,两人继续手玩 F。

手玩一会儿 F 之后翔哥说可以贪心取一定能取到,我试了下我的样例发现取不到,他给我讲了一下他的思路,先把每个物品贡献减掉其所占列的列数,然后再进行贪心的取能取到,测试了打表程序发现没有问题,于是翔哥上机写代码,我在旁边继续手玩样例,手玩到 m = 20 也是可行的。于是感觉正常性非常可靠啊,又充满了希望。

大约 10 分钟写完了程序改完了bug,测了几组已知的数据都没有问题,然后验了大样例也能跑出来,从测样题目样例到测完自己的样例中间花了十几分钟,十分的谨慎。但程序中的 lower_bound 二分,我好怕 TLE 啊。

16:02:43 ,早八208队,提交了 F 题,3 个人对着 PTA 上正在评测四个字看了好久,当时的心脏都快要跳出来了!!!242min1A 。有惊无险的通过了 F,打开榜发现封榜了,hls一句:藏题封榜交开演是吧!笑死。

开榜算了下罚时,我直接胡了一句 483 罚时 (实际452,我真是个演员),在封榜前排 rk 82 左右,感觉很危险,然后看了提交列表,发现只有 A 题过了 20 出头的队伍,其他题都是个位数,hls 之前也看了 A,然后三个人光速看 A。

光速看 A,光速寄,3 个人好像题都读不懂,还剩 40 分钟的时候,hls 直接让我先上机敲线段树,然后我本场比赛第一次翻开了我的模板。。敲完队友似乎还是没搞懂题目意思,概率也不会算。线段转点我写的也有点麻。还剩 10 分钟已知大概是写不完了,翔哥甚至几分钟口胡了 I 题发现并不知道什么数据结构能维护。

最后刷榜,发现提交列表 PTA 不封榜,对比封榜前, F 题多 AC 了70个,而由于我算错了罚时,就差 25 个队伍掉出银牌区,大概率是铜首了,当时的感觉就是 非常的寄。无力无助。

赛后队友直接从 3 题 210 罚时(我们封榜前的罚时)之前开始算,提交后通过最多人数,第一次算完,发现好像很危险。然后又看了下 210 罚时 + 242 不是等于 452 吗?然后就惊奇的发现我tm多算了 30 罚时,算下来封榜前 75 名。然后再数了一轮发现有 22 个队左右能超过我们。心里石头落下来了,但不是非常的稳(还是比较开心的说)。

比完赛和队友出去吃饭,在校门口等的时候,滚榜开始了,滚到了我们 rk 96(去打星 rk 95)。银牌了,文字无法形容的激动,比出高考成绩还激动,眼里不经流出了泪水,第一场区域赛就可以退役了,令人感慨。。

总结

都银牌了,没啥好总结的,可以安心退役了,感谢队友的带飞和自己这一年来起早贪黑的努力,金牌 5 题,目前的来看是没那个实力。之后的ccpc绵阳和icpc济南就放心打了咯!

posted @ 2022-11-06 22:26  Roshin  阅读(329)  评论(1编辑  收藏  举报
-->