省赛总结
? ? ? ? ?前兩天,CHL、HRD兩個(gè)學(xué)長(zhǎng)和我組隊(duì)參加了河南省第七屆ACM程序設(shè)計(jì)大賽,經(jīng)過(guò)我們的共同努力,我們隊(duì)以總排名11名的成績(jī)獲得了金獎(jiǎng)。
? ? ? ? 周六熱身賽的時(shí)候,因?yàn)橐獏⒓印鞍俣戎恰北荣?#xff0c;兩個(gè)學(xué)長(zhǎng)去參加熱身賽,我沒(méi)去。吃飯時(shí)聽他們說(shuō)兩道熱身賽題目都很簡(jiǎn)單,十幾分鐘就做完了。晚上回到賓館我們九點(diǎn)多就睡了。
? ? ? ? 第二天正式賽。比賽一開始,我們按之前商量好的做題策略把題目分開,我分到A題和B題,胡仁東學(xué)長(zhǎng)分到的是C題和D題,剩下幾道題目暫時(shí)分給了常紅立學(xué)長(zhǎng)。
我先看的A題,看完之后感覺像是背包問(wèn)題,但是不知道怎么定義狀態(tài),于是我就先把A題放下看B題。B題是一道圖論題目,我讀完題目沒(méi)有想出用什么模型去做。這時(shí)CHL把他讀過(guò)的一道英文題給了我,讓我再讀一遍,我讀完只懂了大概意思,看樣例發(fā)現(xiàn)按照我的理解去做也對(duì),我和HRD說(shuō)了一下題意,東哥就讓我先寫。我寫好之后樣例過(guò)了,就讓HRD給我出數(shù)據(jù)。測(cè)試他給的數(shù)據(jù)時(shí),發(fā)現(xiàn)有一組數(shù)據(jù)過(guò)不了。我把我的寫法和他說(shuō)了之后,他和我說(shuō)輸入傳參數(shù)時(shí)不能用整數(shù)傳,要用字符串,然后再?gòu)闹邪颜麛?shù)提取出來(lái),我就開始改。在我還沒(méi)改好F題時(shí),HRD發(fā)現(xiàn)了一道簡(jiǎn)單題—H題。他說(shuō)H題是矩形嵌套,問(wèn)我會(huì)不會(huì)寫,我說(shuō)會(huì)(因?yàn)閬?lái)比賽之前我看了那個(gè)題目)。東哥就讓我先寫矩形嵌套。我把代碼寫好之后沒(méi)有仔細(xì)檢查,測(cè)試樣例過(guò)了,于是我們就提交了。交上去以后返回了Wrong?Answer。東哥和我說(shuō)“沒(méi)事”,于是我們兩個(gè)就開始檢查錯(cuò)誤,發(fā)現(xiàn)在循環(huán)時(shí)有個(gè)地方我把j寫成i了,改完這個(gè)錯(cuò)誤之后沒(méi)有發(fā)現(xiàn)其他錯(cuò)誤,我們就又提交了,可是又WA了。這個(gè)時(shí)候我已經(jīng)有點(diǎn)慌了,東哥又鼓勵(lì)我說(shuō)“沒(méi)事,先把代碼打印出來(lái),你們兩個(gè)討論一下,我先寫F題”。我們把代碼打印出來(lái),我和CHL學(xué)長(zhǎng)說(shuō)了下我的處理方法,他看了我的代碼之后說(shuō)應(yīng)該是少了一個(gè)判斷條件,如果按照我的方法,當(dāng)矩形的長(zhǎng)大于寬時(shí),應(yīng)該交換長(zhǎng)和寬,但是我沒(méi)交換,我想了一下發(fā)現(xiàn)確實(shí)有問(wèn)題。于是我就就和東哥說(shuō)在哪個(gè)地方改,他改好之后問(wèn)我還有沒(méi)有問(wèn)題,我說(shuō)沒(méi)有,交上去就Yes了。看了看榜,發(fā)現(xiàn)F題過(guò)的比較多。HRD就繼續(xù)寫F題,CHL學(xué)長(zhǎng)又給了我一道G題,我讀了兩遍沒(méi)有讀懂,樣例也沒(méi)有推出來(lái),于是我就換題了。我又看了A題,還是不知道怎么寫。這時(shí)東哥那邊出了點(diǎn)問(wèn)題,讓CHL過(guò)去幫忙,CHL把我之前看的B題給了我,說(shuō)想暴力試一下,讓我看看行不行。我看了看,如果暴搜肯定超時(shí),于是我就想其他方法。我發(fā)現(xiàn)可以轉(zhuǎn)化成最短路處理,樣例也可以過(guò)。因?yàn)橹挥?/span>200個(gè)點(diǎn),而且是多次詢問(wèn),可以用Floyd把任意兩點(diǎn)之間的值都求出來(lái),詢問(wèn)時(shí)直接輸出就行了。我想了一下沒(méi)問(wèn)題,就先在紙上把核心代碼寫好。HRD和CHL還在調(diào)F題,我又返回來(lái)看A題。沒(méi)過(guò)多長(zhǎng)時(shí)間,他們兩個(gè)調(diào)好了,交上去1Y。我就馬上開始寫B題。寫好之后我讓他們給我出數(shù)據(jù),他們兩個(gè)出的數(shù)據(jù)都過(guò)了,HRD說(shuō)交吧,提交上去也是1Y。我在寫B題時(shí),他們兩個(gè)在討論A題,我寫完B題,CHL開始嘗試著寫A題(此時(shí)還沒(méi)有定義好狀態(tài),也不知道轉(zhuǎn)移方程)HRD和我說(shuō)了他的處理方法,我認(rèn)為不對(duì),我們兩個(gè)討論了大概10分鐘,終于找到了狀態(tài)和轉(zhuǎn)移方程。我們看CHL寫好的代碼,發(fā)現(xiàn)結(jié)果不對(duì),我就幫忙改,大約五分鐘改好了,我和HRD又幫忙出了幾組數(shù)據(jù),也過(guò)了,于是我們就提交了,1Y。我們看了一下榜,排名14名,想拿金獎(jiǎng)還有點(diǎn)危險(xiǎn)。A題過(guò)了以后,D題我們也有了想法,是一道DP,我就按照我和HRD討論的那種方法寫。寫了一半時(shí),HRD說(shuō)那種方法有問(wèn)題,于是我和HRD又在那討論D題。這時(shí)CHL說(shuō)他知道G題怎么做了,我就把電腦讓出來(lái)讓他寫G題。我和HRD討論了半個(gè)小時(shí),后來(lái)HRD提出了一種方法,開始時(shí)我覺得也對(duì),于是我就想數(shù)據(jù)來(lái)驗(yàn)證那種方法的正確性。可是寫了幾組之后又把那種方法推翻了。這時(shí)距離比賽結(jié)束大概還有一個(gè)小時(shí)的時(shí)間,CHL寫的G題也遇到了問(wèn)題。商量之后我們決定先把G題寫出來(lái),如果有時(shí)間再去想D題,于是我們?nèi)齻€(gè)人就一起調(diào)試G題。調(diào)了一段時(shí)間沒(méi)有調(diào)好,我們就把CHL寫的代碼打印出來(lái),HRD來(lái)寫G題。HRD寫了一會(huì)也沒(méi)寫好,于是我又開始寫G題,寫著寫著CHL說(shuō)他知道哪里錯(cuò)了,于是我就退下來(lái)讓他改,我們兩個(gè)在旁邊看著幫他改。又調(diào)了十幾分鐘,終于把樹建好了。把樹建好之后,后面的處理就簡(jiǎn)單了,可寫好之后發(fā)現(xiàn)結(jié)果不對(duì),想了想也沒(méi)想出哪里錯(cuò)了,我就說(shuō)我重新寫后面的那部分吧。我寫好之后發(fā)現(xiàn)還是不對(duì),看了看前面的代碼,我發(fā)現(xiàn)有個(gè)變量沒(méi)有初始化,可改了之后還是不對(duì)。后來(lái)發(fā)現(xiàn)循環(huán)里面寫錯(cuò)了。改了之后樣例過(guò)了,于是我們就提交了,也是1?Y。這時(shí)距離比賽結(jié)束還有7分鐘,HRD說(shuō)交E題。我不知道他什么時(shí)候?qū)懙?/span>E題,因?yàn)闃永龥](méi)有退出來(lái),放在那里一直沒(méi)有交。后來(lái)才知道是數(shù)據(jù)錯(cuò)了。E的樣例過(guò)了,提交以后超時(shí)了。于是我們就馬上改,改完以后再提交,還超時(shí),改了交上去沒(méi)有返回結(jié)果,就又交了幾次,因?yàn)楫?dāng)時(shí)已經(jīng)不在乎罰時(shí)了。直到我們離開賽場(chǎng),還有幾次提交還沒(méi)有返回結(jié)果。看完最終排名之后,才知道E題最后還是沒(méi)有過(guò)。就這樣經(jīng)過(guò)5個(gè)小時(shí)的努力,我們做出了5道題,除了H題WA了2次,其他四道題都是1Y,總排名第11名,獲得了金獎(jiǎng)。
通過(guò)這次比賽,我的感觸是:
1.比賽時(shí)隊(duì)友之間的鼓勵(lì)很重要,特別是隊(duì)長(zhǎng)對(duì)隊(duì)友的鼓勵(lì)更重要。H題在我連續(xù)錯(cuò)了兩次之后,我已經(jīng)有點(diǎn)慌了,但東哥對(duì)我說(shuō):“沒(méi)事,我相信你!”給了我巨大的心理安慰,減輕了我的精神和心理負(fù)擔(dān)。
2.比賽時(shí)就算把題目做錯(cuò)了,也不能慌,心里越急越想不出解決方法。
3.隊(duì)友之間的配合尤為重要。
4.比賽期間,要學(xué)會(huì)心理的自我調(diào)節(jié),當(dāng)自己心情煩躁時(shí),一定要懂得自我調(diào)節(jié)。
5.要敢于去想,敢于嘗試,只有嘗試之后才知道對(duì)錯(cuò)。
6.要靈活運(yùn)用自已經(jīng)學(xué)會(huì)的知識(shí),平時(shí)要多練習(xí),只有練得多了,見得多了,才知道怎么把一個(gè)問(wèn)題轉(zhuǎn)會(huì)為另外一個(gè)問(wèn)題,有些題目不是不會(huì)做,而是沒(méi)有把問(wèn)題轉(zhuǎn)化成自己已經(jīng)學(xué)會(huì)的模型上面。
?
?
總結(jié)
- 上一篇: 沈南鹏问了微软CEO四个问题
- 下一篇: UVA 10142 Australian