2018 ICPC 徐州現場賽

2018ICPC徐州區域賽,這是我第一次參加的ICPC比賽,經過五個小時的奮鬥,最後拿了一個銅獎。雖然對於各位dalao這次的題可能並不太難,但是我們隊卡到比賽結束也只做出了A題,而且罰時幾乎要排到銅尾。不過這次比賽對我來說真的非常有意義,我在ICPC賽場上做出了第一道題,也拿到了第一個ICPC獎項,還收穫了很多寶貴的經驗。

回顧這次的比賽,開局一眼望去就覺得沒有水題,我看了下C題和F題的題面,但都沒完全讀懂,直到20分鐘左右清華過了第一道A題,全場就開始跟榜了。然後我就一直在看A題,A題的題意是求圖中所有最小生成樹的權值和,即最小生成樹的權值和乘上最小生成樹的數目,其中每一條邊的權值以及連接的節點都隨機生成,接下來就介紹了一種計算最小生成樹數目的算法。當時我看到這題連算法都有介紹,覺得挺可做的,結果整個人處於夢遊狀態,單是理解算法就想了一個多小時。實際上算法的思路就是將邊按權值分塊,分別求出每一塊的生成樹數目,全部相乘就能得到結果了。我覺得這個代碼很複雜,所以就找寫代碼比較熟練的隊友來寫題,討論了半個小時又寫了差不多一個小時才搞定,滿懷期待交了一發,然後就WA了。當時比賽已經過半,大家都很緊張,要是連A題都做不出就爆0出局了。我突然想起題面有提到如果最小生成樹不存在,那麼結果應該返回0,還有就是求每一塊的生成樹數目時也要對生成樹分塊處理,和隊友討論了一下就繼續改題了,最後又調試了一個小時左右,改完交上去終於AC了。我們做A題花了差不多三個小時,心態已經爆炸,就想着再苟一道G題,結果一直到比賽結束也沒有想到做法,反而是隨手寫了下M題,覺得有點思路,不過也沒有時間了。雖然我們只做了一題,但全場做得都不太好,靠着極限的罰時我們最後還是拿到了銅獎,有遺憾但也足以安慰自己了。

出來之後聽說這次的榜全部歪了,I題纔是簽到題卻只有一個人做,還有好幾題不比A題和G題難多少,卻也少有人取開題。然後A題的正解居然是直接構造最小生成樹就行了,由於隨機數生成器過於給力,根本就不會出來兩種以上的最小生成樹,只需要特判0就行了,我真實感受到被dalao們智商壓制。這次比賽給我的感覺和平時訓練完全不一樣,在賽場上無法知道題目的難度,跟榜也不意味着就是正確的選擇,在全場開題失敗的時候,完全讀懂每一道題目纔是最佳策略,有好幾道題我都是隻讀懂一半,看着沒人做就懶得去讀了,實際上與其硬剛一道題,不如多嘗試一下。平時訓練就是手速場,先把水題拿下,再慢慢剛題,但在比賽中,我發現明面上的水題幾乎是沒有的,不管什麼題至少也要讀懂題意,稍微啓發一下思路才能確定難易,所以我們這次最大的敗筆就是想着大家都在做的題一定更容易想出來,特別是最後我不應該和隊友一起去剛G題,因爲我一點都不熟悉G題,聽到題解後我也認爲這道題對於我來說不可做,而M題則更適合我發揮。

無論如何,這次比賽讓我明白了,在實力之外還要掌握做題的技巧,只有全面掌握題目的信息才能作出最佳的選擇。雖然不知道以後還有沒有機會參加ICPC的比賽,但我還是會以這次的成績鼓勵自己,向着更強的目標努力。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章