前言
整体评价
有幸参加了第六届的传智杯决赛(A组),因为这个比赛是牛客协办,所以就写在这里。
作为Java选手,比赛中其实吃亏了,主要是T2吃了一发TLE,T4吃了一发莫名其妙的MLE。
顺便吐槽下T3,自测反馈WA,但是提交却AC(我中间一度迟疑不敢交),感觉这题应该关闭自测功能,或者自测不提示结果。
整体比赛,比我想象中的简单一些,前四题比较典,后两题有区分度。
最后希望传智杯越办越好,也希望牛客承接更多的比赛。
A.
签到题
B.
签到,考察前缀和
就是输入输出的数据量有点大,但是Java IO写TLE,哭了。
C.
思维题
这题,其实我做过类似的,好像是去年的某一个场娱乐赛吧,来自于一个游戏,记得当时有讨论。
不过这题, 我一开始写成了
change("a", "c");
change("b", "c");
change("cc", "");
change("c", "odd");
change("", "even");
但是这个wa了,很隐蔽。
赛中我的一个直觉是,是不是空串不行,但是不知道为啥, 我换了种写法才过
change("a", "c");
change("b", "c");
change("ccc", "c");
change("cc", "even");
change("c", "odd");
D.
状压题,理论上,这题有点难度,但是无奈太板了。
不过这题,Java又被卡了(花式受罪)。
卡了一次MLE,我当时有些懵圈,幸好结果只是返回yes/no.
所以我用bitset替代了bool数组。
然后就过了。
E.
第一次在比赛中使用 “对拍”的技巧,过的时候,真的很兴奋的。
这题出的真好,很多构造的思路根本想不到。
写了一个小数据的对拍程序,然后把不一致的case打印出来。
主要是
3 5
4 6
这两组数据上。
尤其是4 6
[1, 1, 0, 1]
[0, 0, 1, 0]
[0, 0, 1, 0]
[0, 0, 1, 0]
[0, 0, 0, 1]
[0, 0, 0, 1]
[0, 0, 0, 1]
[1, 1, 1, 0]
[1, 0, 1, 0]
[1, 1, 0, 0]
[0, 1, 1, 0]
[0, 0, 0, 0]
大概有这三种类型
当n很大的时候,其实考察的是组合数学,需要用到逆元了,所以真正拉开差距是这题。
F.
第一眼以为 lazy线段树
然后在细看了下,每个mod不一样,感觉毫无思路。
时间也不多了,遂放弃。
写在最后
下次有机会再来参加。
许个小愿望:
-
A组的人数有点少,感觉评奖上吃亏,希望能调大A组的获奖比例。
-
比赛对Javaer/Pythoner更友好些。