首页 > 代码库 > CCPC杭州赛总结

CCPC杭州赛总结

相比于之前的比赛,这次比赛我没有任何包袱,轻装上阵,热身赛前两天晚上八点坐公交车去火车站,路上堵车,差点错过火车,还好一切顺利到了杭州预定的宾馆,这已经是热身赛前一天的下午四点钟了,相当于20个小时的车程,晚上和河南学校的一群大佬在一起聊天(虽然我并没有说很多话)。
    睡一觉醒来已经是热身赛那天的上午,和队友zjd&&zgp还有在杭州工作的学姐wh一起去杭电报道领取参赛服以及参赛手册等物品,接着就在杭电吃了午饭,又在杭电转了一圈,闲暇之余看到了狗狗和鸭子在湖中长达十分钟之久的追逐大战,接着就参加热身赛。
    热身赛开始了,就开始看题目,莫名其妙的看懂了A题,(瞬间觉得自己可以过英语四级了,说来惭愧,大三了还没过四级),由于我比赛中读英文题目能力基本为0,这次读懂题目后,而且是个水题,就直接上去敲代码,记忆中是1A了,然后就测试了一些东西,由于是在HDUOJ,所以一切都很熟悉,没有太多需要测试的东西,都说热身赛不要多A题,会败人品的,于是队友一致决定不做题了。结束后回去,早点睡准备第二天的正式赛。
    早上七点的闹钟响了,这时看到zjd已经起了,再洗刷,我就躺了一会,等待他洗刷好,然后和队友&&学姐一起去杭电了,进场后一会,比赛开始了。
    比赛开始几分钟后,就有人A了A题,于是让队友翻译A题,这时的我战斗力为0,不懂题意的我就敲了基本的输入输出,这是zjd已经翻译好了,于是给我翻译了这道题,感觉有一点思路,就试着去写,写着写着发现有点问题,于是和队友一起讨论,这时zgp队友指出了zjd翻译的一个小漏洞,漏掉了一个条件,有了这个条件后,题目变得很是简单,改了一下1A了。由于前面选题问题,还有中间的翻译出现小问题,A一道题时已经是53分钟了。于是看了下榜单,发现F题做的人比较多,队友给我翻译了题目,于是就一起讨论这道题,我想到了这道题只需要枚举最后一个数字的位数,最多三位,那么前面的就可以确定,于是选择让zjd敲这道题,我就和zgp看C题,看了好久我也没看懂题,意外的是zgp也没看懂,这时zjd的F题的代码已经写好了,测了一些样例后,感觉挺对的,就提交了,意想不到的是WA了,然后决定给队友找错,我写了一个数据,发现代码过不了,这时就debug了,调试后,发现问题,队友zjd及时做了修改,又测了几组样例,在这期间我又仔细考虑了我的思路没有问题,应该就是代码上的一些小bug,决定交一发,情理之中A了,这时已经是1小时27分钟了,由于C题的翻译卡到了,当时C题A的人相对比较多,两个队友都在翻译C题,由于之前队友给我说无意间听到了旁边队伍说K题是个水题,于是给我翻译了K题,由于我翻译能力太弱,决定去想想K题,两个队友就一直在翻译C题,可是旁边是杭电一队啊,强校队伍口中的水题可不一定是水题,K题暂时没有思路,终于C题翻译有了进展,分析后就是个贪心,于是我决定我去敲C题,敲完后测了样例后,就鼓起勇气提交了,WA了,好尴尬,越是就想是不是自己思路哪里出了bug,感觉没有问题,然后就感觉可能是翻译上那地方漏掉东西了,看了讨论版后,发现题目应该是实数,但还是不太确定,因为之前WA的代码是只考虑了整数,一再的问队友是整数还是实数,决定用改成实数,代码需要修改的并不多,改成实数后心里还是没有底,但是测了一些样例后还是决定交一发,又WA了,我这心里感觉好TM蓝瘦,WA了两发了,打印了代码,这时让zjd去写B题,我就看我的代码,和zgp讨论代码可能存在的问题,想着是不是精度问题,就决定改改,在这期间队友zgp应该也翻译了K题,并且给我说了K题的大意,但那时A的队伍很少,出于没信心,我让zgp暂时放弃K,由于再三斟酌C题思路没错,且这时给zjd的B题思路找到了思想上的bug,我就去改C了,加了一些精度上的判定,然后又测了极端的情况,发现在数据范围在1000000时出现了误差1,但是继续修改也无法避免这个误差,决定交一发,戏剧性的A了C题,这时已经是3小时43分钟了,还有一个多小时的时间,这时做的最多的是B题,于是就决定写B,(这可能是我这场比赛的一次错误决定,抹杀了队友zgp写K的念头),由于没有什么思路,只想到把这个题转化成图来写,我就写了一下预处理的过程,将输入转换为图的问题,这时并没有思路,我就让他俩先想着,我先暴力搜索一发,到比赛还有四十分钟时,队友zgp说可能是连通图缩点,这时我也有搜索上面的优化,还是让队友用连通图的模版去套一发,于是他俩套模版去,我选择想想我的思路有没有什么优化,我想到了处理一下入度为1的点都需要去花费,而且和队友zjd讨论后,感觉思路没有错误,决定不写连通图了,还去搜索,然后顺着思路写完了,交了然后就WA了,知道比赛结束也没有A掉。
    又一次ccpc打铁的经历,上次时去年的南阳站,这次感觉铜牌近在咫尺,可惜还是自己太弱,回到宾馆还在想B题思路的bug,并没有想到,因为入度的数组忘记初始化了,所以这个有问题,接着我想到了除了初始化以外的错误,但是一会我又想到了避免这个bug的想法,只需再第二次搜索后判断这个环上是否入度都为1就可以避免了,(正确性需要等题目放出来后写一下验证)赛后还想到了K题素数间距不会太大的问题,然而这早已为时已晚。
    总的来说这次比赛发挥不是太好,C题花费时间太过于多了,以至于最后时间不够用,以后还得多注意细节上的问题。

队友弄的图片直接拿过来用吧。

技术分享

CCPC杭州赛总结