5月30日下午,美國佛羅裡達州奧蘭多Peabody酒店,第35屆國際大學生程序設計大賽(ICPC)總決賽現場,浙江大學計算機學院的王燦老師盯著記分牌上不斷刷新的排名,心跳加速。頂不住 「上躥下跳」的刺激,他中途離場了半個小時。
賽場內,浙江大學計算機學院的巫澤俊、歐陽嘉林和數學系的莫璐怡正在埋頭演算,神情超乎尋常地鎮定,似乎任何情緒的波動就會影響解題進度。直到主辦方宣布:總冠軍是浙江大學隊!同學們的笑容才在那一瞬間釋放。
這支來自浙江大學的ArcOfDream隊在懸念疊出的總決賽中,擊敗了來自30多個國家的103支隊伍,第一次拿到了ACM-ICPC世界總決賽冠軍。浙大是目前獲得該賽事全球總決賽冠軍的第二所亞洲高校。
競賽的快樂如此立體
「假如你在埃及沙漠中突然碰醒了沉睡千年的一群木乃伊,你怎麼用最快的速度逃命,才能不被這幫非常生氣的木乃伊抓到?」「如果你是一部計算機,怎樣讀懂古埃及的象形文字?」這些看似偵探小說的問題,正是這次ACM全球總決賽的題目。
程序設計比賽,就是從一個有趣的故事出發,要求參賽者抽象出一系列計算機編程問題,然後設計編寫電腦程式,如果程序運行後能解決這個問題,就算答對。往年,5個小時內的題目總量是8—10題,隨著參賽隊水平的逐年提升,為了增加區分度,今年的題量已增加到11題。每個題目都對應一種顏色的氣球,答對一題,這個隊伍桌邊就會升起這個顏色的氣球。
「這有點像遊戲闖關,但精彩程度非電腦遊戲能及。」巫澤俊說,「我們所有人都是因為這個比賽『好玩』而產生了興趣,激發了學習熱情,堅持到現在。」領隊老師王燦說,十多年來,大家都是認可並堅持的就是陳越老師提出的「快樂競賽」的理念。在這個高度專業性的競賽裡,他們的「訓練」方式顯得很「業餘」,不搞職業集訓,只是在周末有一次碰頭會,其餘時間都是自己支配,避免陷入強化培訓、猜題等應試教育的泥潭。
比賽帶給同學的快樂是多元而立體的。歐陽嘉林說,一個問題往往會有不同的解決方法,有的方法會顯出你的「聰明」,有的則會顯得你很「暴力」。如果解得漂亮,就很有成就感。在全球總決賽的觀眾席上,還有往年參加過比賽、現在早已工作的「大頑童」趕來觀戰,為的就是「好玩」。
程序設計競賽在浙江大學開展10多年來,曾出過不少牛人,吳嘉之就是其中的一位,據說當年的指導老師陳越教授只是說了句:「你來玩一玩,不好玩,可以走。」結果,一發不可收拾,他後來「玩」成了被世界頂級商業媒體《商業周刊》和美國《計算機世界》作為頭版人物報導的Top Coder公司中國技術副總裁。
「聰明人最怕的是什麼?」
在計算機領域,全球程序設計競賽被認為最聰明人之間的較量。王燦老師2005年起當上浙大程序設計競賽基地的輔導老師,一直是和這些「聰明」的學生打交道。他說,「聰明人最怕的是什麼,就是自以為很聰明。一旦這樣認為,心態就會不對,以為什麼事情都會比別人省力、少花時間,這種情緒會妨礙他們衝擊更高的水平。」
競賽登頂並沒有給同學們帶來太多自我欣賞的情緒,他們更看重競賽能為自己綜合能力加分的事實。大四女生莫璐怡是這次比賽中最耀眼的選手之一,這項賽事舉辦30多年來,總決賽冠軍第一次出現女生的身影。每屆比賽的優勝者都會成為國際知名公司爭搶的目標,而她則堅持自己去香港大學攻讀博士的計劃。「我看重競賽是因為它能非常好地鍛鍊我的思維能力、分析和解決問題的能力,其餘只是『浮雲』,未來我更想在學術上有所發展,試試看自己能在這個方向走多遠。」
王燦老師說,參加程序設計競賽的同學,很注重自己在程序設計方面的創新意識和攻關能力,這是和國際計算機領域的頂尖公司的人才戰略是吻合的。「在程序設計領域最有挑戰的任務包括大型系統開發和複雜算法設計,前者往往需要大規模的軟體團隊相互協助,主要的挑戰在於項目的管理與協調,對於軟體工程師算法設計的能力要求不高;而後者則需要高度創新性的、高技巧的頂尖人才,不僅要在算法設計上有著較高的技巧,往往還需要在相關專業領域有著深入的積累。這類人才深受微軟、谷歌等頂尖公司青睞。」
IBM公司一直很支持ACM-ICPC 的舉辦,軟體戰略總監Doug Heintzman表示:「第一,全球在程序設計方面最有創新能力的學生脫穎而出,可以促進IT乃至其他行業的快速發展;第二,我們可以通過大賽找到需要的人才;第三,作為有責任的企業,還需要積極營造解決行業和社會難題的和諧氛圍。比賽不僅鍛鍊了參賽選手的程序設計能力,還激發了他們關注和解決社會難題的能力。」
「新手上路」必經之地
3位同學奪冠的消息在浙大引起了強烈反響,又激發了不少同學關注程序設計競賽。這幾天,浙大學生自創的網站《浙江大學程序設計自動判題系統網站》引來了不少衝關挑戰的同學,而三位冠軍就在幕後當起了評委。他們在網站上掛出了詳細的「英雄徵集令」,答題闖關拿到一定的「經驗值」,可以進入下一輪的比賽。
目前,程序設計競賽在浙大的「群眾基礎」越來越廣泛。自從2001年6月由陳越和翁愷兩位老師組織了校內第一屆「浙江大學圖靈杯程序設計競賽」之後,競賽規模從首屆48隊100餘人迅速擴大,在2007年達到最多286隊700餘人,目前基本每年穩定在200隊左右、五六百人的規模。2002年,浙大把這項賽事列為學科競賽基地之一,每年4月份舉辦校級比賽,5月份浙江省高校比賽,近兩年來每年都有近80所高校300多支隊伍上千師生參加。暑假開始後,從競賽中脫穎而出的隊伍就「晉級」到更加高深的單元,大家相互出題,共同切磋提高。歐陽嘉林說,自己當年是「漏網之魚」,因為功力不夠沒有「晉級」,但是因為比賽太有吸引力,他又堅持了一年,終於「晉級」成功挺進校隊。
據介紹,這個「新手上路」必經之地《浙江大學程序設計自動判題系統網站》(簡稱ZOJ,網址http://acm.zju.edu.cn/)創辦於2002年,是參加程序設計競賽的浙大學生以極大的熱情僅用3周時間就自行設計開發的,由學生分工協作出題、維護、管理等全部工作。該網站在全球同類網站中,題庫量和訪問量均位居世界前列,是國內第一家、也是全球最著名的競賽練習網站之一。這個網站系統至今已平穩運行了9年的時間,成為全球編程愛好者的樂園。
(周煒)