第7章 線上賽
雖然社團的師兄們許諾可以幫404隊的各位準備ACM,但誰也沒當真。
三名女生在這方面都是很清醒,尋求別人的幫忙哪那麼容易?你的時間和精力寶貴,別人的時間難道就不值錢嗎?不排除真有奉獻性的人以幫助他人為快樂,但大部分人都沒這麼聖母。你接受了別人的好意和熱情,這種待遇收進來總是要回報的吧。如果希望找男友,又看對方順眼到是可以藉機和某位師兄發生一段感情,但如果不能回報還要去利用別人那成什麼人了?——至少404宿舍的幾位女生還做不出這麼不要臉的事情。
還是靠自己去試一試接下來的ACM網絡選拔賽吧,找准自己在學校的定位再說。
通常來說,ACM競賽的規模可大可小,最大的當然是世界級的,最小的就是學校自己組織的比賽了。華大ACM競賽組委會組織了不同類型的比賽,主要分為線上賽和線下賽。
404宿舍的諸位只能先參加線上賽,線上賽每月一次。每月月底,官網上會定期發佈一套符合國際ACM競賽難度的題目,每支隊伍在網上參加比賽。線上賽採取積分制,積分到了一定程度,就可以進入線下賽;線下賽中的優秀者,就可以代表學校參加地區的比賽,和其他大學的優秀學子競爭一番。
華大ACM線上賽的比賽時間是兩個小時,要解決三道題。一百二十分鐘說來不長,大腦高速運轉,腦子裏各種算法和代碼亂飄,堪比一些工科的職業考試,真的是體力活。雖說平時的訓練也是按照這個要求來的,但是經歷過高考的同學都知道,做模擬卷和高考的感覺能一樣嗎?!
比賽在周六舉行,這是肖萌第一次參加ACM線上賽,從早上九點開始,她和404宿舍其他兩名隊友端坐在電腦前等待題目刷新,隨後投身入熱火朝天的試題中。
題目準時在電腦上刷新,三個人匆匆掃完題干,都陷入了失言狀態。她們知道題目是英文的,但不知道會那麼長。
“單詞量很大,比我想像的大。”
“好像每個單詞都認識,但連在一起都不認識了……”
三人一邊吐槽,一邊查資料,花了二十分鐘搞懂了這幾道題的意思,又引發了第二輪吐槽。
“題目好難啊。”
“感覺每一道都比上一道更難。”
“第一道題積分200,第二道題目積分400,第三道800?積分直接翻倍啊,可想而知多難了!”
“從積分低的開始吧?”
“當然。800分的咱們不要考慮了。”
第一道題是尋找素數問題,對高年級學生來說可能是送分題,但對404的大一新生而言還是有難度的——沒有很好的數學基礎是很難解出這道題的。三個人一邊查資料一邊搜索,耗時一個小時寫完了代碼。
第二道是交通問題,公交車的時間規劃,三個人商量了一個小時才找到了解題思路,但因為時間限制,代碼沒能寫完;至於第三題,完全不在計劃內。
線上賽結束后,分數很快刷出,404團隊的分相當低,對這個結果,大家當然是有數的。她們知道自己和高年級學生的差別,人家多念一年書,假設每個人每天刷3小時ACM,一年下來就會比她們多刷1095個小時!假設平均每小時做一道題,那就比她們多刷1095道題!這個數字足以決定一次比賽的成敗了。
在華大這樣競爭十分激烈的環境中,想要勝過別人哪有容易?
肖萌不是容易氣餒的人,吃過午飯後,她就在各大ACM網站搜索和第二題類似的題並查看解法,再用幾個小時的思索閱讀資料,她找到了第二道題的解法。
對她的求知精神,王璇很支持,也陪着她一起討論;張雨晴則表示自己要換換腦子,出門參加同學會去了。
不過這套方法對第三道題失效,肖萌和王璇找遍了各大網站也沒找到合適的參考資料。
肖萌只要有機會就絕不會放問題過夜的人——就是靠這種精神,她考上了華大——她想了想,敲開人工智能協會的群。
人工智能協會的群規模不大,成員有40幾個,群里的交談不算多,主要就是用來發佈“某時某地開會”“我又上傳了一份資料”等通知信息——然後下面就是一群“謝大神”的傢伙。
肖萌將第三道題目貼到群里求助。她掌握的幾種算法都無法解出這道題目,連解題思路都沒有——很明顯,這道題考的是數學知識。
[小萌]:各位大神,請問這道題怎麼做?
題目是這樣的:有一個無限大的國際象棋棋盤,惡魔能在棋盤的黑色格子上跳躍,最多可跳躍五步,天使只能在白色格格子上跳躍,最多可跳躍三步。天使和惡魔從相距一千個格子的格點出發,天使逃,惡魔追,距離如果相距不到一百個格子,那惡魔就戰勝了天使。問題是:惡魔能在多少步內追上天使?
[劍行天下]:我看看,有點意思,算不上很難。
“劍行天下”是王聰的馬甲,從馬甲看就知道這位會長對武俠小說很是熱愛。他當然有資格說“這道題不難”。
[小萌]:是今天的ACM校內網上競賽的題目。
[劍行天下]:可以考慮用Bellman-Ford算法……中文版是你自己的翻譯的?
[小萌]:是的。
[劍行天下]:你把英文版貼上來我看看。
[小萌]:好的。貼圖.jpg。
[劍行天下]:唔,這道題多少積分?
[小萌]:800分。
[劍行天下]:明白了,幫你@Freddie。
肖萌知道Freddie這個馬甲背後是路之航,不由得有些猶豫。
[小萌]:這樣好嗎?
[劍行天下]:聽我的,找他沒錯。線上賽的那些比較難的題目,大都是他出的,他手上一定有最好的答案。
[小萌]:啊!居然是路神出的題目啊!!
肖萌不得不連打了多個感嘆號,現在只有用咆哮體才能完美的展示她的心情。
此前,在閱讀路之航的書時她就深深感受到了自己和頂尖人物只見的差距,跟大神比起來,彷彿自己就沒長腦子一樣。
想想看,自己正對着苦思冥想的題目是大神隨手出的——如果自己的天賦和學習能力是十的話,那路之航的數據絕對超過一千或者一萬了,具體數值如何根本沒法不是她這個層面可以估計的。高中時代的肖萌很少有這種被別人碾壓智商感,大學真是感受了一次又一次。
肖萌懷着震撼的心情敲開了這個名叫“Freddie”的QQ。
[小萌]:路師兄在嗎?
兩人的聊天框空蕩蕩,只有他發來的三張電路圖。
聊天框沉默了好一會,三分鐘後路之航回復了她。
[Freddie]:什麼事?
三個字加一個標點符號的發言很冷淡,符合他一直以來給人的印象。肖萌連忙講述了原因,並把第三題截圖發給他。
[Freddie]:這道題是我出的。
[小萌]:師兄,你有答案嗎?我想學習一下。
三十秒鐘後路之航發來一個只有不到1K的txt文件。肖萌點開一看,正是第三題的答案。
準確,極其準確。這是肖萌看完代碼這些后的第一想法。
除了準確外,路之航的代碼還十分簡潔。正如數學題也有多種解法,編程題的解法自然也有多種解法。只從文本大小判斷就可以看出路之航的高明之處。
第三道題,路之航用了圖論中的算法,代碼行數很少,簡潔流暢,酣暢淋漓,優美得堪比五言絕句,當代碼放到編譯器運行時,時間極快,內存佔用極低——肖萌覺得再給自己再學三四年也未必能想出如此巧妙的解題法,她拍桌長嘆,所謂醍醐灌頂也不過如此。
王璇一直坐在她身邊看着她聊天,對答案陶醉不已:“3.1毫秒!太漂亮了——咿,我為什麼會說一道題的答案很漂亮?”
“這就是真理的魅力!”
肖萌一邊回答她,對路之航表示了感謝。
[小萌]:路師兄,太感謝了!你的解法我學到了很多。
[Freddie]:不用謝。線上賽的答案明天也會發佈。
[小萌]:提前看到的答案的感覺不一樣啊,如果可能的話,我不喜歡讓問題過夜。
[Freddie]:好習慣。
[小萌]:路師兄,我能問一問,你是怎麼出題的嗎?出題的原則是什麼?
[Freddie]:老師讓我出一些可以用來考試的試題,組合數學、線性代數、圖論、數論、幾何問題各幾十道。但選哪些題作為線上賽的試題,我不清楚。
[小萌]:這幾大類囊括了信息競賽的每個方面。
[Freddie]:是。
沉浸在網絡世界多年的肖萌當然能從簡簡單單一個“是”字讀出“談話收尾”的意思。肖萌想,這位大神的網絡聊天風格和日常生活中的聊天風格給人的感覺很像,不那麼好接近。
但不論如何,除了第一次的接觸外,他對自己有問必答,能幫則幫,這位神仙般的師兄真是個好人。
正待進一步研究大神的解法時,肖萌收到了姐姐肖薇的召喚。
“到小肥羊來吃飯!”肖薇在電話那頭歡快地說。
“……咦?”
“地址發到你手機上了,快點過來。”
ACM競賽的腦力消耗確實挺大,肖萌有些已經很疲憊了。想到熱騰騰的火鍋,肖萌鬱悶的心情不翼而飛,當即從座位上彈了起來,精神也好多了。
王璇對她揮揮手,視線再次匯聚到屏幕上。
“和你姐姐去吃飯,我再研究一下大神的解法。”
“好。晚上回來時給你帶零食。”
肖萌抓起書包離開宿舍,騎車前往目的地。