THUWC / WC 2024 游记

· · 生活·游记

1.15

现在买的是 1.25 早上的火车,可能会改飞机。

1.19

期末考炸了,不说成绩了……

1.25

到重庆了,下午去试机,没想到 E 在地下一层找到地方的时候已经 16:15 了……然后赶紧写题结果发现忘了 vscode 怎么放大了,于是就直接开写,最后没写完 T2 瞎交了一个居然拿了 15 分。

晚上 RDFZ 学生一起吃饭,感觉这饭在哪都能吃到,没吃到什么重庆特色,明天准备去吃火锅(?)。

1.26

早上开题,看了 T1 77 直接秒了,写了之后以为能卡卡 100 试了一下发现不行,于是去做 T2。思考了一会儿之后发现可以类似矩阵乘法弄一个一维的时间复杂度 O(n^2\log k),90 到手。

开 T3,前两个 Subtask 很送直接写了,思考了一会儿第三个 Subtask 决定去上个厕所。回来之后我又把 T1 特殊性质 13 分写了,然后我也不知道怎么的我就想到了一个 T3 的四分块假做法,我误以为只要右下角的块有最大值就一定在右下角,然后写了个分治拿了 87。

开 T4,感觉很像前几天做的 APIO2019 桥梁,但有有不少区别,仔细想了会儿还是只会暴力,于是就把暴力写了还调了 20 分钟,这个时候时间不太多了我决定回去看看前面的题。

想了一会儿 T1 和 T2 正解没有结果后,我决定思考 T3 正解,发现我的做法 C_2 可以优化拿了 97 分。结果过了一会儿,正解没想出来我倒是发现我做法假了(数据为什么这么水!!!),然后我赶紧写了个 53 分保险分只剩两分钟了。我又写了个优化也许可以多几分(赛后发现可能不止几分?),但我以为是取最后一次提交而且一分钟只能交一次然后我就不敢交了,最后遗憾 90+90+[53,97]+15=[248,292] 离场。

结束之后问 syj 和 wdm 发现他们 T3 都写了和我一样的假做法,但他们甚至最后都没发现!希望最好别卡假做法这样我一等基本稳了。

晚上和 syj,wdm,cyy 去吃重庆小面,吃完之后又去坐了个游船,风景很好。在游船上 syj 都在用手机看题,真是太卷了!

哦对忘了说了,地下一层体育馆真的太冷了,况且我还是最靠边的一排门都不关风直接吹到背后!

1.27

今天去的比较晚,到了之后等了五分钟就开题,发现是个奇怪规则的四子棋,看了 pdf 半天只会蒙特卡洛。

研究了一会儿下发文件,决定先写一个判断对局是否结束的函数和一个估价函数,写完之后想着直接枚举下哪然后取估价最高的一个(但我的估价不太准没判 1101 这种情况,我也懒得写),然后又特判了一下如果能赢就直接下,如果对方能赢就直接堵。

交上去发现 T1 60,T2 50,这个总共十次提交搞得我都不敢交了(铺垫)!思考了一下直接手动枚举三层然后胜率莫名其妙变低了,于是改成了枚举自己和对手各一步,胜率稍微高了一点(有的点变高,有的点变低,平均值增高了一点),交上去 T1 70,T2 60,不错我可以疯狂交 T3 了。

这个时候只剩一个半小时了,我感觉我的代码也没什么可以优化的了就去写了蒙特卡洛(实际上估价函数还可以调参,但我一开始的参其实也不错),结果调了一个小时一直 RE(也可能不是 RE),果断放弃。

现在只剩半小时了周围的人都开始交了于是我把 T3 T4 T5 都交了,然后拿到了 50+30+10,感觉运气还行我又交了一遍最开始的版本,T3 直接拿了 60(可能还是跟运气有关)(在这个 60 还没测出来的时候我还交了一遍拿了 50 的版本,最后没测出来)。

所以说现在我只剩一次提交机会了,但后两题的分都不高我感觉第五题可能不太好打于是我又交了一遍最开始的版本到 T4,最后也没测出来。

五道题加起来是 70+60+[60,100]+[30,100]+10=[230,340],最终是多少我也不知道。

syj,wdm 貌似都没考好,但听说有人拿了 400+???

两天总分 [248,292]+[230,340]=[478,632],下午根据老师的表情猜出来了 Day1 T3 被卡了,所以只有 248+[230,340]=[478,588],而且上界显然只是理论上界,实际是不可能取到的。

最后好像也没公布分数,等奖项特别着急……

晚上打 CF Div.1 A 直接想复杂了还写挂了没调出来,去写 B 简单线段树 20 分钟过了,C 推出来了但时间不够了没搞清楚 \sqrt{2} 的问题,但由于我分低所以照样能上分,syj 上红了 tql。

1.28

睡到九点多起床,吃完饭看了会儿 NBA 然后去磁器口吃小吃,吃完又去湖广会馆完成语文作业,然后去长江索道人太多了就在大约 19:00 回到了酒店。

1.29 ~ 1.31

好吧,没啥好写的,宿舍非常小而且没有网实在是太无聊了!

打 USACO 铂金,调了很长时间 T3 没调出来,直接不打了……

打 CF #922,上了点分。

2.1

进考场先把所有题看了一遍想了一会儿,大概想到了 T1 一些暴力+特殊性质, T2 正解,T3 想了半天之后发现假了于是只会特殊性质……

决定先开 T2,发现有用的 L 只有 O(n) 个,于是暴力线段树维护每个点左/右,水面上/下能走多远。先写了个暴力,结果发现我暴力都过不了,哦原来是有用的 L 想错了,真正有用的应该是 h_{i-1}+h_i+0.5 和 0,暴力过了,然后花了一个小时写完+调完细节很多的正解,此时已经是 11:30。

心想这是 WC,决定把暴力打满,然后在想 T1 特殊性质 t_i=1 的时候想到了一个分两类考虑倒着 dp 的方法,但由于我赛时脑残没发现可以正着 dp 第二维上限是 T,于是我的做法是 O(n^2T) 的。

由于我一开始写挂了,我一度以为自己写的是假做法,赶紧把代码删了写了个暴力。后来我又意识到做法是正确的,还好 dp 不难写重写了一遍直接过了样例,但没过大样例,瞪着代码在结束前 5 分钟调了出来,能得 80 分。

但 T3 时间不够了,于是 80+100+0=180 遗憾离场。

下午看分数,还好没挂,但发现 T1 好像由于跑不满有两个点 1.5s 差一点,很后悔没卡常。讲题的时候才意识到我和正解只差大约五行代码……

Au 不可能了,Ag 问题不大,等着颁奖。

2.2 ~ 2.3

这两天几乎啥都没干,很无聊……

2.4

果然是银牌,不知道有没有金勾。