THUWC 2024 游记

· · 生活·游记

Day 0

试机。

试机开始的时候还在天上飞(

在差不多三点半的时候到了学校,领了牌子袋子,在学校转了两圈就是找不到考场,最后问了志愿者才找到。

看到首页上写的两天的操作系统不一样,觉得很奇怪,但是没有管太多,他的系统跟平时用的差不多写了个 A+B 和个线段树试试键盘就走了。

Day 1

7:40 到学校,发现没有带水,不知道去哪里买,算了不管了。

开题。

T1 把 nm 的数据范围看反了,以为是个弱智状压,写到一半才发现看错了。后来又编了一个 O(m3^n) 的枚举子集,考场上降智一直想不出正解,先把这个写了,再加上特殊性质拿到了 90pts。

这个时候大概过去了 50min,赛后发现其实只用把那个 m 消掉复杂度就对了。

开 T2,因为不知道自己的想法对不对就先写了一个暴力模拟,过了 44pts,再加上一个前缀和优化就 50pts 了。然后把这个过程用矩阵优化就有 61 了,再加上一个前缀和优化矩阵预处理就有 70 了。

感觉这个 90 分很可做的样子,继续想,然后发现每一步的任意矩阵的每一行都是上一行的轮换,那这样矩阵乘法就变成 O(n^2) 的了,过掉了 90pts。

差不多两个小时 15 分钟。

开 T3,先无脑写了一个一个一个点查询,拿了 11pts,发现跟预想的不一样,仔细看了一下它 c1 c2 的计算方式才弄懂,先后写了前两个sub拿了24。

然后想把sub1的做法扩展,无脑仿照sub1写了一个做法,一交,发现97。觉得很震撼,算了一下好像根据次数算的话真的能拿97,那后就没管正确性那些了,还剩两个小时多一点。

这 thu 怎么还发面包啊,赞。但是没带水感觉咽不下去。

开 T4,读完题之后感觉很神秘,先把暴力的 15 分写了。

再想特殊性质的sub2,过一会之后发现只要先把所有的区间合并,依次编号,枚举相邻两行的相邻区间,连边,要查询的就是这个图上最小生成树上两点间边权的最大值,写了一个重构树就行了。

感觉不复杂但是写了 6k,交上去一直WA,写了拍子,加上输出调试最后一共写了 8k 才拿到 36pts。

还剩下15分钟不到,直接开摆。

最后离场时候的 pretest 是;90+90+97+36=313,当时感觉自己稳 win 了。

出来一交流发现 T3 做法的正确性完全有问题,要被卡到 24 了。

Day 2

小丑了。

开题,扫了一眼题面感觉很震撼,真手搓人工智能啊。

看了看下发文件,他已经给我写好了一个全下右下角的方法,先试试编译。然后就发现自己不会编译,在题目里找编译指令找了好久,甚至发了提问,得到的回答是毫无悬念的 no comment,一个小时之后才发现他有一个 makefile 的文件,里面有编译指令。

开场一个小时,啥都没干,只会了怎么编译。

然后看了看 ppt,写了一个只有一层搜索的代码和一个巨大复杂的估价函数,发现一直输,一直输,一直输。调了半个小时才发现原来我是 machine。

两个小时的时候交了第一发,拿了 60 分。之后把代码改成了 minmax 搜索,但是不知道为什么还是只能拿 60,本地输的比赛都下了巨大多步,完全没法调试。

最后又改了改,打 6.so 有 60 \% 的胜率,五道题每道题都交了一遍,最后 T1 T2,又交了一遍,到最后也没有测出来。

出来的时候得分是:60+0+0+0+0

颁奖的时候拿了4=。