昨天打了第一次模拟赛,由于种种原因,导致本来可以拿到更高分数,但是最终成绩却不甚理想。虽说不能让一次比赛的结果影响到后面的心态,但是好好总结一下这次比赛中犯的错误还是很有必要的。
整体情况来看,这场比赛的策略出现了严重的问题。T1 没什么好说的,主要是 T2,我看完题目后觉得很可做,就一直硬刚 T2,浪费了大量时间,导致后面的题总共只剩下一个多小时。其实一个多小时也可以再做一道题,但是由于我把很多问题想复杂了,直接就把可以过题的思路给否了,一直在想看起来更好的做法,结果最后没做出来,赛后发现正解之一就是被 PASS 掉的思路之一。可能是因为有段时间没打离线比赛,把这些以前说过了要规避的问题又犯了一遍,下次绝不能再犯这种错误。
然后是每道题的情况。T2 其实我刚看题后没多久就有了大致的思路(而且听了评讲之后发现与出题人题解思路完全一致)。但是在有一个地方,就是某位为 1 的数的个数是奇数时,我没有意识到到这里这个子问题就可以直接结束了,而是想着继续往下分治,导致过不了样例,之后想了很久都没想出来,就放弃了这种思路。其实本质上还是把题目想的过于复杂,以为后续过程也要以之前的方式处理,殊不知这种特殊情况有特殊的处理方法,而且实际上稍微往这个方向上靠一靠就能想出来。然后是 T3,虽然没剩特别多时间,但是赛后证明剩余的时间其实是可以做出来 T3 的。但是我看到了 \(n,m \leq 15\) 后,就觉得这是标准的状压 DP 的时间复杂度(\(O(n 3^n)\)),就把本来觉得可以的直接 DFS 给否掉了。之后才发现 DP 要记录的状态太多了,时空双爆炸,但是我还是觉得状压有优化的空间,就依旧没写 DFS,最后才发现是真的优化不了了,此时想写 DFS 已经来不及了,甚至连状压也来不及写,只好输出 \(-1\)。其实以前也做过这种小数据范围的题,当时我也不敢直接搜索,后来发现其实有时候搜索也不失为一种好方法(只要状态数比较少,或者能剪枝剪很多),但是我却没有吸取教训,总觉得可以状压/乱搞,导致这种搜索题我几乎就没在赛场上做出来过(真是学的越多,学的越少)。再说到 T4,听完评讲发现是线段树+换根,这些可能本来是我比较擅长的东西,想一下兴许能想出来,但是由于前面浪费了太多时间,导致最后一道题根本没有时间深入思考。
最后总结一下,依旧是那两个老问题:
- 时间分配不合理
- 题目想复杂
这些问题其实之前已经出现了很多次,现在看来我可能还是没有引起足够的重视,导致这些错误一犯再犯。去年 CSP-S 也是这样,T2 卡了太久,再加上心态爆炸,导致有可能写出来的 T3 大模拟写的漏洞百出(过不了最小的样例),T4 也没看,遂整场比赛都因为这一个题而爆炸。今后要杜绝这些问题,不然会像去年一样死得很惨。
下次比赛希望能够调整状态与策略,争取能够及格,在此基础上尝试做三道题。毕竟今年再打不好就没有多少机会了。
标签:比赛,状压,T2,第一次,DFS,其实,反思,模拟,但是 From: https://www.cnblogs.com/gevenfeng/p/18410870