24.5.17 Day -1
这次早有准备,提前一个小时到了车站。
到了西安北站之后,又花了 100 元坐了一个多小时的网约车才到酒店。
荒郊野岭。
24.5.18 Day 0
我和 lprdsb 在酒店待了一天,让 samnever 去拿东西。
荒郊野岭。
24.5.19 Day 1
不理解为什么要把热身赛放到早上。
热身赛 A、B 很快就做出来了,但是 C 卡住了。到开幕式的时候我观察出来,将箱子划分为以 t-1 个为一组,从 0 开始编号,如果第 i 组球有奇数个,那么对 sg 的贡献就为 i,否则为 0,最终 sg 就为每一组贡献的异或和。
正式赛。开场 lprdsb 看到 E 是半平面交,果断放弃 E。
半个小时开出了 M 和 J。我看到 F 是博弈论就研究了下,很快有了结论,一看榜还没队出,心里一阵惊喜。写出来一发过,却以 1 min 之差遗憾失去一血。此时三题,排名良好。
之后我们转向 B 和 D,思考许久,无果,逐渐滑出金牌线。
过了 1 h 左右,samnever 发现 L 的数据范围里字符串的长度很小,所以可以直接枚举匹配的情况,用 map 查最小值就可以了,交了一发 TLE。我一想,那直接 hash 之后映射到数组下标查就不用 map 了,交了一发 WA。
lprdsb 想到 I 的做法,于是我把代码打印,让 lprdsb 写。因为志愿者都在忙着发吃的,代码很久才送过来。
端详了一阵子,我找到了问题所在,改完过了 L。lprdsb 很快也过了 I。
lprdsb 和 samnever 讨论了 D 的 O(n\sqrt n) 做法,枚举公差之后把数按照所需的 a_1 分类,TLE 2。听了他们的做法,我提供了我看 D 时观察值域为 1e6,把复杂度优化到调和级数的思路,不过我没有想到把数归类。封榜前过了 D。
之后我们看 G。samnever 提出如果把所有边改为单向边,可以得到所有点出度不超过 10 的 DAG, lprdsb 给出了一种从小度数点连向大度数点的构造,一发过。算了算榜上位置,7 题金牌稳了。
剩下的时间里我们都在想 A 和 B。
讲题的时候才知道 B 原来是看数据范围知的脑筋急转弯。lprdsb 说如果他注意到了范围肯定能想到做法,我说我注意到了范围然而没想到做法。
这场的教训是注意看数据范围。
Comments NOTHING