2017-IPCP西安站总结与反思

赛前

27号晚上到的西安,睡了一觉后早上起来与学长回合。酒店很舒服,休息的很好,精力很充沛。
这次icpc比赛是我第一次参加区域赛。热身赛比较崩,上来三个题,很快读懂了题意,A题猜了一次就过。我写的B题模拟无论怎么输入都只输出一种结果,弄得我很是头晕,甚至怀疑是不是cb卡了之类的。队友的C题也是迷之WA。最后半小时就没再继续搞这两个题,测试了一下Java和其他的编译环境,结果Java无论怎么提交都是ce,跟志愿者反馈,技术人员来了之后按照他的方法提交还是ce,然后热身赛就结束了,一直没有编译通过。热身赛结束后问了学长和提交过Java的同学,貌似和我们的提交方法都一样,因为这个,心里还是稍微有点慌的。

正式赛

比赛开始后,氛围明显不一样,说实话心里是有点紧张的。上来第一个水题错了两次才过,差点背锅。第二题yxm猜了一发过了,第三题是线段树+贪心,xq拿分块过了。第二题第三题都是1A,过的还算顺利,这时候比赛已经三个小时了。我把剩下的所有的题都读了一遍,G题和我们组队赛做过的一个题很类似,但是加了一个q次查询,我们一起想了半天的G题,发现根本不会处理,时间大概还剩下一个半小时的时候,我们决定放弃G,一起做J题。开始以为是个dp,然后看到pc2上给出的第一组样例的解释,推出了作法,只需要选的五种英雄的方法数,乘上第一组样例就是答案。热身赛时测了一下评测机跑的挺快,但是直接枚举是100^5复杂度还是爆炸。我想到了容斥,因为思考时间太长最后也没改出来。比赛的时候发生了一个小插曲,感触还是颇深。我们右后方的队伍(应该是四川农业大学)在临封榜的时候电脑突然冒出黑烟 ,随即主机后面冒出了火花,像放鞭炮似的。旁边队伍提醒先把电脑电源拔掉,周围围了一群志愿者和技术人员,而当时坐在电脑前面写代码的那名队员丝毫没有受其影响,很是专注,从始至终只是专注的做题,并且他们成功在临比赛结束的时候A掉那个题。

赛后

西安的比赛是第一次参加ICPC现场赛。在现场赛的过程中会出现各种各样的状况,而我们需要做的,就是沉稳应对。一开局我心里就有点紧张,第一个题错了两次才过,还好队友心态好,自己也及时调整了一下。这次比赛也暴露出一些问题:
 1. 水题不够稳。这次第一个水题错了两次才过,差点把队友坑了。在今后的训练中,除了做一些算法题,也要时不时做几个简单的题来锻炼一下准确度和速度。首先保证准确度,简单题有罚时是很亏的,当然也不能太慢。
 2. 时间的利用不够充分,有些犹豫。做完前三个题后,我们犹豫是做G还是做J,因为G跟组队赛做过的一个题很类似,我们当时也意识到加了查询之后原来的做法根本不可行。在犹豫了近半个小时后才决定一起做J题。如果最后能够多出这半个小时甚至是二十分钟,也许会出现不太一样的结果。之后的组队训练中如果是遇到那种没有任何头绪的题,就要果断扔掉,不能盲目跟榜。
 3. 这场比赛偏重于数据结构,尤其是线段树,还有一些带有查询的题目,基本上都是要用数据结构来优化。我们队在这一方面还是比较薄弱。之后我会做一些专题训练来弥补这一方面的短板。