我在WF2024是怎么爆炸的
利益相关:WF2024排名 “4” * 2 。
看到队长写了,有感而发,我也写一个,估计 99% 概率是最后一届参加 WF 了,在退役之前最后写点东西了。
前排提示:有 WF 2024 题目的部分做法,要训这场的不建议看。
先复盘现场我在干什么,在一开始的时候,我读到了 C ,我知道这应该是签到,改一下标号随便做做应该就对了,但我给他的定位是半个小时后开始写,直觉告诉我这题没那么好写。
然后开始读接下来的题目,对所有题目有个大概的认知,意识到 C 大概率就是第二道签到题了,此时队友写 B ,我开始想 C ,发现按照 365 分组时间复杂度就对了,在队友过了 B 后我就上去写了。在过了样例后送,WA了。
按照平时训练的习惯,送打印然后下机了,然后本场比赛第一个出人意料的事情来了,半个小时后我拿到了半个小时前的 C 题代码,在仔细检查后,我和队长提出要发个 Clar ,问一下 0000 年 00 月 01 日之前 “我” 是否在这座城市,我以为我代码判了,我以为题目实际上认为不是。
在队友过 F 后,我上机发了个 Clar ,然后造了组上面情况的例子,发现原来我的代码压根没判对这种情况,改了过这个例子后,Clar 回复 No comment,让我确信应该算在城市里,送了过了,此时一个小时,我们走出了很牢的局面,至少还是有机会翻的。
刚刚在机下等打印的时候和队友交流了 D 的做法,过了 C 后就接着开写了,毫不意外的又 WA 了,又等打印半小时,在队长认可这个做法的情况下,我又说给了另外一个队友听,虽然可能是多余的行为,但是从最终结果上看很关键,因为在拿到打印后,给队友看了代码,队友立马发现我把 s 写成 n 了,改了过了。
在等 D 的期间,队长和我说了 A 的做法,我觉得很对,队长就直接上了,在 D 过了后,由于打印慢,此时已经两小时了,我看了 G 的题意,和队友交流了下,队友说这不是基环树吗,我一听很有道理,突然觉得这题很可做,先想了点充分条件,然后去管 I 了。
至于 I, 在等 C 打印的时候,我就和队友交流过这题,由于队长之前出了个边权为 1 的版本,以至于我们先入为主的认为应该从深往浅考虑每个点是否被覆盖了,然后优化这个过程,当时我觉得如果是优化过程,队友一定能搞出来,我就一直没管了。
在两个小时后,我突然发现 I 大伙都过了,就和队友交流了一下,发现大伙没什么想法,队长有个标记做法,但当时我没听懂,而且感觉过这么多个队没道理这么麻烦,所以没准备写这个做法。但换个角度想,我们三个人顺着这个角度想都没想出来,说明一定不是这个角度,于是换了个方向,发现直接 DFS 贪心就行了,写了过了,此时三个小时。队友开始写 L ,我们的 A 开始 WA 。
在三个小时的时候,虽然我的欲望让我很想去开新题,但我的理智告诉我得管队友了,我去查询了队长的情况,但查询无果,我觉得他就是被卡精度了,起码大方向绝对没写错,后面看了眼榜,既然帮不上队友,那我必须得开新题了。和队长交流了下 K,可惜我不会玩汉诺塔,想了一会没想明白汉诺塔应该怎么贪心,因为我正着想的,所以我的思路是找最大的 i ,使得 1~i 是连续的,讨论 i + 1, i + 2 的位置,但没编出个对的道理。
万幸的是队长给出了贪心思路,直接倒着考虑就很对了,首先要把最大的盘放到 1/2 号柱等等,虽然现在没 AC 这个题,但我觉得这个贪心非常的对,然后发现维护答案 ± 一个很小的值,就能把过程的计数变成 + 2^k ,这维护起来显然是简单的,但我不会写,我不会写这种狗屎。
这个时候队友的 L WA 了,我无论如何都得上了,不上没机会了。
在四个小时的时候,我声称我想好了,我上机了,这时队友已经是绝望的眼神了,但我觉得绝望中还存有一线生机,狠狠开写。后来越写越晕。
在四个半小时,队长换了个精度更好的做法,15 min 过了,我下机,因为理智告诉我我不可能 AC 这个题了,写得完也调不对。然后全力 All in L ,没 All in 出来。聆听比赛结束的声音,陷入一片茫然,好像平静的接受了这个结果。
至于 J 题全程没看,因为队友声称他会了,而且难写,我就没管了。G 题在三个小时我接着想发现后面是无穷无尽的讨论就弃了。
很难评价这一场,前期我在犯罪,打印迟迟不来,后期队长A题被卡精度,直接导致后期决策爆炸,而我不能写狗屎题间接导致比赛爆炸。哎,在正赛时总会发生一些出乎意料的事情,可惜我们前期调整过来了,后期没有调整过来。
在来盘盘场外的问题,在之前,遇到模拟、几何、数据结构,默认丢给了队长和队友,我对这种屎题本能抗拒,写的也少,平时自己加训也少,导致了最后我两个小时等价于啥事没干,假设 K 做法是对的,我不觉得一个训过比较多狗屎题的人不能在一个半小时写出来。真得吃屎啊,无论抱着什么目的来打这个比赛,只要想在 WF 打出成绩,就一定要训练代码能力。
其次,英语不好,直接导致了读题成本增加,所以本场 J 我就没读了,可能 J 比 K 可写一点,对我来说?不管怎样,真得加训英语啊。
然后,平时的分工就该跟队友沟通好,在组队一开始,我和队友在分工上产生了一点冲突,后面各自做出了一些让步,但是并没有实际解决,我也没有进一步跟队友交流,虽然这个问题不是大的问题,但我奉劝各位选手,如果想要经历一段快乐的 ACM 时光,在队内出现矛盾的时候不要忍着,沟通才是最优解,但凡队友是个正常人,都一定会有好的沟通结果。
最后,老生常谈的,多训练,尤其是补题和加训,队友做的题自己也要做做,不过老生常谈了。
至于分锅,我先说一下我的锅,平时训练完就回去打游戏,导致我自己训练很少,而在训练时基本上几何和模拟都丢给了队友,所以我平时的代码能力就是依托,我现在的代码水平和高中相比甚至更低,这间接导致了后期的无能为力,直接导致了前期机时的爆炸。再洗一下,我不觉得队长问题大,总不可能 A 被卡精度了就是他锅最大,“不做不错,少做少错” 这句话我觉得纯放屁,只能说精度题是这样子的,虽然训练赛时有一万种方式可以解决,但正赛没法在前几遍过掉就会十分影响比赛进程。
总结一下我短暂的 ACM 生涯,刚打 ACM 想要大显身手,在秦皇岛开局开 L 被逮捕了,导致秦皇岛爆炸,在此之后我不再干这种犯罪的事情,啥时间就该干啥事。
沈阳干出了 char kmp[N] 的抽象事情,但是发现了,没酿成大祸,出线了。
杭州犯罪,至今都忘不了那个 E ,因为方向错了牢了一整场,导致队伍爆炸。
EC final 菜了,被妙妙题送走,又把我能写的一个题丢给了没讨论明白的队友。
暑假猛猛训,但就是不喜欢写屎题,相信队友,队友确实给力,这期间的屎题全吃完了。
结果偷懒都得应验的,WF 最后两小时挂机。爆。
多么短暂而又印象深刻的 ACM 啊。
打 ACM 的收获还是很多的,实力的提升是一方面,还交到不少朋友,能与两个知名网红做队友,队友教了我不少的东西,感谢队友。而且比以前更懂得合作了。也学习了怎么伪装成心智成熟的大人:多尝试自己解决问题、有问题多沟通、真遇到问题请求他人的帮忙、有机会多尝试。同时也意识到不应该勉强自己干一些事(指打ACM),还是自己所热爱的才能坚持下去,纯为了结果还是太难坚持了,这影响了我未来的人生规划。
感谢各位,希望未来有队伍能重振荣光。
最后给点建议:
- 首先不要依赖 gdb ,机下调试能省机时。其次尽量一遍写对,如果出了不能对拍的题目就爆了。
- 队伍里面如果不是单核队伍,而是三个人负责不同的题目,三个人的代码能力都应该够好。
- 有问题多沟通。
- 不够热爱比赛的不建议打这个比赛,不够努力又没天赋的人打不出结果的,如果是这样子建议别跟想出成绩的队友组队,不然以后频繁训练的时候指定得发生矛盾。
UPD:队友看了说太恶心了,在几天后修改了部分可能会让人不适的内容。
本来还想写点高中的东西的,但似乎之前写过了,而且写了的话,这篇文章就太杂了,就不写了。