三场组队练习赛总结

By ch_g
组队赛总结:

第一场 The 8th Zhejiang Provincial Collegiate Programming Contest
standing:http://acm.zju.edu.cn/onlinejudge/showContestRankList.do?contestId=325

  这场是和硕强、GZT组队的第一场比赛。这场比赛做得并不好,除了6道水题外,其他一题都未出。
  比赛刚开始的时候,硕强从前面开始读,我中间,GZT从后面读题。很快硕强读完第一题就发现该题大水,很快过掉,A1y(10)。这时候GZT说最后一题也大水,我让他敲,也顺利过了,M1y(16)。我读的第5题,属于大自然,稍微想了想,没有思路就跳过。这时候GZT和我说倒数第二题应该不难,他把题意告诉我以后,很快就想到了一个方法,不过不确定其正确性。但是由于已经有很多队伍过了此题,于是决定水一下。然后GZT让我敲,他读其他题目去;可是这时候我有些不在状态,犯了一个脑残错误,WA了一次,L2y(25)。这时候硕强读完F题,说又是水题(这次水题真多啊),然后她敲F,F1y(29)。然后硕强告诉我们B题有很多队过,让我和GZT中的一个去看,结果我和他都去看了(那个时候不知道为什么没有说好谁去看,导致两个人看同一题)。我还在想算法的时候,GZT已经把公式推好了(犀利啊),我和他确认了一下感觉应该没问题;不过GZT正要敲的时候我,说这题是doulbe型的,小心精度,这时GZT犹豫了一下,让我来敲(这又是一次失误,一来这题GZT的思路比我清楚,二来这次比赛一上来我的状态不佳,应该果断让GZT来敲这题的)。我敲完代码以后便过了SAMPLE,当时没有仔细看一下,就交了,结果返回一个TLE,再一看,我居然的脑残的把while(cas--){solve();}写成了while(cas){solve();},这样必然TLE啊,不知道当时脑子里在想什么。改正了这个沙茶错误后,再次提交,居然WA了;和GZT讨论了一下,发现我理解错他的意思了。- -!巨汗啊!!!改正错误后,谨慎了,又检查了一遍,提交后过了,B3y(46)。前期要不是我贡献的3次罚时,开局就还算不错了。
  在中段的时间里,硕强敲D,我和GZT看了其他的题目,GZT和我说了H题,我判断应该是AC自动机+DP或矩阵乘法(当时有一段时间没有搞过AC自动机了,这么明显的一个AC自动机的题目没有赶去敲)。这时候硕强开始卡D题了。于是我让顾泽天看看其他题目,我去和硕强搞D题。硕强和我说了一遍题,我也重新读了一遍,理解得和硕强差不多。然后转而和硕强一起看代码。找了半天也没发现什么大问题,只是改了一些无关紧要的地方,WA了几次。这时我觉得可能是有什么细节的地方,硕强敲错了,于是我让她去看其他题,我把D再敲一遍。结果敲完提交仍然是WA。这时候GZT也读了一遍这道题目,发现我们理解上的一个错误,(额,我和硕强两个人同时读这题都没有发现理解上的一个漏洞,实在是不应该啊)。改正后才A掉,D5y(177)。这时候GZT和我说了K的题意,一道很明显的Floyd矩阵加速。不过题意有一些不是很确定。敲完后提交,WA了。然后我们三人同时搞这题,YY了各种理解(不过可惜就是没有理解到正确的题意)。一直到赛后都没有过。后来看解题报告的时候才知道正确的理解。这场比赛卡的两道题目都是因为题目理解的问题(不过让我们没有料想到的是后面的两场也都同样出现了题目理解问题,同样的错误犯了一次又一次,应该好好反省一下)
赛后GZT和我说了I的计算几何,也不是很难,不过那个时候已经没有时间出了。


第二场 HDU上的Virtual Contest,2009 Multi-University Training Contest 11 - Host by HRBEU
standing:http://acm.hdu.edu.cn/vcontest/vtl/ranklist/realrank/vtlid/1624/page/1


  这场比赛刚开始还算顺利,后面又因为题目理解问题而开始卡题。

   比赛一开始有些慢热,硕强读了几题以后发现第H题是最小圆覆盖的模板题,硕强敲之,H1y(40)。这时候,我读的第四题题目意思不是很确定,和GZT商量了一下以后,推了一个不靠谱的式子,打算水一下。我敲完后WA了(不过这个式子,其实是正确的,只是我题目中有一个条件没看清楚)。GZT和我说了七题的题意,比较明显的暴力算法。于是我让GZT继续想想,我先敲这题,很快G1y(53)。然后硕强发现第三题是无向图最小割的模板题,然后她敲最后一题,我和GZT看其他题。不过悲剧的是硕强一直都没有出Sample,她对吉大模板不熟悉,让我帮忙看看,我一看发现,她居然翻错页码导致敲错模板了,敲上正确的模板后提交WA了,然后由于题目没有说明数据的大小,我提议用int64,改成int64后过了,C2y(90)。与此同时,GZT也发现了第四题中我看错的一个条件,改正后过了,D2y(98)。过了第四题后,GZT和我说了最后一题的题意,确定是DP,而且貌似我以前做过,我敲好后顺利1y,I1y(111)。这时硕强和我说第二题是汉密尔顿路径,于是,我紧接着又开敲第二题,不过一直是WA,期间让硕强和GZT一起来找错误,也没有发现什么问题。

   这时候我在卡第二题,硕强和GZT去讨论第6题了,发现这题是pell方程,不过他们之前都没有搞过,但是知道AC大牛的blog里有pell解方程的文章。由于实在没有其他题目可做,于是他俩就去看了AC大牛的blog,了解之后,硕强就说随便敲一下试试,结果过了,F1y(271)(不过这题是属于作弊才过的,就不算入过的题目里了)。

  最后离比赛结束只有几分钟的时候GZT发现,第二题题目中,有一句话是“he doesn't want to visit a city more than twice”,也就是每个节点可以走两次。巨汗啊!!!又是题意没有理解清楚。这时候已经没有时间敲了。

  除了第六题外,只出了5题。依旧是题目理解问题。



第三场 standing:http://202.120.106.94/onlinejudge/contestrank.php?contest_id=70

  这场比赛,依旧是题目理解问题。(看来要好好反省了)

  一上来硕强说第一题很水,于是上机子敲之。这时第7题有很多队伍过,GZT说第七题只要两行代码,然后让硕强改了改,交之,返回WA。我和他一起又看了看题目,换一种理解再交,过了,G2y(22)。这时,我读的第四题,也有很多队伍过了,我看完后上机敲之,31分钟时AC,D1y(31)。再换硕强继续敲第一题,敲完WA了一次。于是我和硕强讨论了一下,发现一开始的想法有小问题,换成二分的算法才过了,A2y(52)。这时候看到lpld过了第九题,于是硕强读了这题,和我说了题意,是kmp的简单题,于是我上机敲,结果WA了,和硕强讨论了一下,感觉判断“unknown”的地方可能有问题,然后各种YY之后还是没有过,于是我让硕强看看其他题目,我继续检查代码。这时候GZT看了最后一道的概率题,和我说了,我感觉可能会有精度问题,让GZT推一下公式。然后硕强来告诉我第三题和第六题可出,她先和我说了第三题的题意,是计算几何题,我稍微想了想没有太明确的思路,又问第六题是什么,初看是“Nurikabe”,“数墙”,我以为是我以前做过的一道比较难的搜索,后来一听原来只要判断合法情况,应该就算简单模拟了,于是先敲这题,139分钟的时候AC,F1y(139)。这时候,发现最后一题lpld过了,手上又没有其他可敲的题目,于是,我让GZT和硕强想想那道计算几何,或者再看看最后第二道字符串的题目是什么问题。我敲完最后一题,居然么没有过Sample,于让GZT重新读一遍题目,我检查代码有没有问题。看了半天没有发现什么错误,然后手推sample居然也不对,于是自己也读了一遍题目,发现题目中要算的概率是连续输L场以上而不是GZT理解的只要输L场以上。于是想了一个dp的方法,敲完出sample了,这时候有一些心急,没仔细看规模就交了,返回RE,再读题发现规模是2000,我数组开小了,改之再交,TLE了。再读题目,有200个Case,那200*2000*2000的规模是会TLE的。于是让GZT推一下公式,我想优化。由于机子空着,于是硕强就先敲第三道的计算几何。我感觉最后这题的规模很卡时间,应该稍加优化就可以了,然后想到题目要求的精度是1e-7,而dp的值是递减的,如果算到了dp值小于某个精度的时候其实就不用算下去了,因为这对最后结果影响很小,于是在状态转移中加了一句if(dp[i][j] < 1e-12) break;的小优化,交之又TLE,我又发现我开的是二维dp[2000][2000]而且每次计算之前我都memset一下,很浪费时间,于是改成滚动数组,再交,过了,J4y(178)。这时候比赛已经不到一个小时了,于是我们把题目锁定在第三道的计算几何和倒数第二道的字符串。硕强敲第三题,我和GZT检查字符串的问题。我和他又读了一遍题目,我突然感觉可能根本不需要输出题目所描述的“old”,因为“old”的情况都有可能是“new”,然后就应该输出“unknown”,和GZT说了一下,感觉很不靠谱,但是时间不多了,就随便试一下吧。不过这次连我自己都没有想到居然AC了,I6y(277)。这时比赛只有不到半个小时了,我们队三人就一起冲击第三题了。不过由于开题太晚,最后没有敲完。

  总结:这三场比赛中题目理解问题成为了我们队的绊脚石,这应该好好反省一下的。

你可能感兴趣的:(总结)