第 50 章 滑鐵盧
時(shí)間一分一秒地流逝,老蔡的手指懸停在電腦鍵盤之上。
老蔡是個(gè)細(xì)心的人。他寫程序時(shí),追求精益求精。他偏過頭和小梁討論,要如何提高程序的運(yùn)行效率。林知夏找不到插話的時(shí)機(jī),只能坐在座位上,靜靜地聽著老蔡和小梁談得熱火朝天。
老蔡感覺自己把林知夏排擠到了隊(duì)伍之外。他有些內(nèi)疚。他講了個(gè)笑話,活躍氣氛,還讓林知夏幫他檢查一遍代碼。
林知夏掃眼一看,確認(rèn)老蔡的程序沒有問題。
此前,林知夏曾經(jīng)指出老蔡的“二進(jìn)制字符串不該左移兩位”。不過,現(xiàn)在看來,老蔡的思路是正確的。林知夏向他道歉:“對(duì)不起,我剛才說錯(cuò)了,我沒想到你會(huì)這么寫。你的解題方法和我完全不同。”
老蔡調(diào)整了一下座椅的位置。他一邊提交代碼,一邊對(duì)林知夏說:“趕緊的,我們來研究第六題。第六題是代數(shù)幾何……”
老蔡一句話沒說完,小梁的手指輕點(diǎn)桌子:“第五題錯(cuò)了。”
老蔡和林知夏一起抬頭,齊刷刷地望向電腦顯示屏。
IHSPC是一場(chǎng)殘酷而嚴(yán)格的比賽,每個(gè)隊(duì)伍的分?jǐn)?shù)都是實(shí)時(shí)更新的,也是公開透明的。參賽選手上傳某一道題的代碼,后臺(tái)程序就會(huì)立刻判定得分。
對(duì)與錯(cuò),得分與扣分,全在一念之間,也在一瞬之間。
老蔡感受到了巨大的壓力。他屏住呼吸,嗓音沙啞:“我們第五題寫得不對(duì)?”
第五題爆出一個(gè)大錯(cuò),倒扣7分,省立一中的總體排名一下子從全場(chǎng)第六名跌落到了全場(chǎng)第十七名。
截至目前,俄羅斯隊(duì)和韓國隊(duì)遙遙領(lǐng)先,中國的幾支參賽隊(duì)伍緊隨其后。省立一中不占任何優(yōu)勢(shì),林知夏心弦緊繃,急忙查看后臺(tái)的反饋。她說:“你用二進(jìn)制字符串來表示第五題的集合,左移兩位代表乘4,可是你少寫了一種情況……我也有錯(cuò),我沒有仔細(xì)閱讀你的每一行代碼。”
老蔡緊緊地皺著眉頭,臉上陰霾不散。他握著鼠標(biāo),刷新頁面,比賽排名再度更新——省立一中淪為第十九位。
林知夏每次考試都是年級(jí)第一,她從沒見過“第十九名”的成績。她有點(diǎn)懵了。老蔡還在修改第五題。小梁安撫道:“老蔡,別急,還有機(jī)會(huì)。”
老蔡第二次提交第五題,再度被判定為“Error”。
這個(gè)“Error”,就是“錯(cuò)誤”的意思,省立一中又被扣了4分,整體排名連續(xù)下滑。
“真要命啊。”老蔡感慨道。
林知夏擋開老蔡的手,直接奪過鍵盤。她在老蔡的程序基礎(chǔ)上,新增了一個(gè)變量。她點(diǎn)擊鼠標(biāo)左鍵,按下綠色確認(rèn)按鈕。可是,她并沒有力挽狂瀾。“Error”重復(fù)出現(xiàn),“省立一中”的名次沉落到了第四十三位。
小梁不留情面地批評(píng)道:“林知夏,你交得太快了啊,我們沒看清你的寫法。”
這時(shí)候,林知夏才把試題拿出來,重新閱讀第五題的題干。她和隊(duì)友們說:“我知道了,我們都把這道題記錯(cuò)了。兩個(gè)星期前,老師帶我們訓(xùn)練的時(shí)候,給我們出過一道題,那道題和這個(gè)第五題有百分之八十的相似度,但是限定條件完全不同……”
林知夏還沒說完,小梁和老蔡已經(jīng)在合力修改。
他們不約而同地被激發(fā)了賭徒心態(tài)。
第五題讓他們輸?shù)迷綉K,他們?cè)揭獓L試,直到把第五題答對(duì)為止。
林知夏指著屏幕,建議道:“把這個(gè)函數(shù)刪掉吧,它是冗余代碼。”
所謂的“冗余代碼”,指的是沒有必要存在的代碼。
小梁的手指在鍵盤上飛速躍動(dòng),可他并沒有理睬林知夏。小梁和老蔡低頭耳語一陣,認(rèn)真交換了意見,再次提交第五題的答案——這一次,他們終于成功了。
偌大的比賽場(chǎng)館內(nèi),充滿了各種語言的談話聲。
對(duì)面的俄羅斯隊(duì)正在談笑風(fēng)生,他們目前排名全場(chǎng)第一。隔壁的愛沙尼亞隊(duì)神情肅穆,三名隊(duì)友一邊畫圖,一邊探討著第六題。
寬敞的落地窗之外,飄著一片濕漉漉的霧氣。窗戶上沾著朦朧的水珠,天空越發(fā)黯淡灰白。遠(yuǎn)處的樓房成排而立,映在暗色調(diào)的背景里,就像一副意境深遠(yuǎn)的油畫。
林知夏走神了。
林知夏今年才擁有了第一臺(tái)電腦,而老蔡和小梁從小學(xué)習(xí)編程。小梁的爸爸和媽媽都是省城一家電腦公司的程序員,可以說是出身于“程序員世家”。或許,林知夏應(yīng)該調(diào)整自己的狀態(tài),努力地做好輔助工作。
經(jīng)過一番深思熟慮,林知夏點(diǎn)了一下頭。她拖動(dòng)椅子,靠近老蔡。
老蔡打開了本次比賽的主頁面。他看見,省立一中排在第四十九名,后面的隊(duì)伍還有較大的上升趨勢(shì),照這個(gè)情況發(fā)展下去,別說金牌了,銅牌都沒希望。
林知夏困惑地問:“為什么我們?cè)絹碓娇亢罅耍俊?br/>
老蔡說:“俄羅斯和美國都派了二十幾支隊(duì)伍。你看美國這幾所高中,全在前面,就連英國學(xué)校都反超了我們……”
林知夏連忙說:“我知道第四題要怎么做。只要我們把第四題答對(duì)了,省立一中的分?jǐn)?shù)就會(huì)上來的!”
“第四題怎么做?”老蔡反問她,“還是剛才那個(gè)辦法?”
林知夏非常確定:“是的。”
老蔡推高了鼻梁上的眼鏡。他依舊認(rèn)為林知夏的做法有問題,就像他寫錯(cuò)了第五題一樣。他覺得,林知夏對(duì)第四題的觀感有誤。他建議林知夏先在草稿紙上創(chuàng)造一組數(shù)據(jù),再把這組數(shù)據(jù)代入她的程序,驗(yàn)算她的方法能否成功。
“我在自己的腦子里驗(yàn)算過了。”林知夏誠實(shí)地說。
老蔡卻說:“你寫下來,多寫幾頁紙,我要按步驟問你。你剛才提交第五題,沒讓我和小梁檢查。你出錯(cuò)了,隊(duì)伍丟了四分。”
林知夏伸手搭上鍵盤:“最開始,我以為,第五題是我們之前遇到過的套路題……你和我犯了一樣的錯(cuò)。這就是‘三人成虎’的道理——三個(gè)人確認(rèn)了同一件事,無論這件事是真是假,他們的第一反應(yīng)都是隨大流。”
老蔡右手撫著鍵盤。他本來在思考第六題。而林知夏的這段話,讓他莫名煩躁起來。他把眼鏡摘下來,放在桌上,抬起手掌,猛地搓了搓臉。
林知夏的說辭一套一套的,把老蔡說得心煩意亂。
IHSPC的賽場(chǎng)上,最忌諱的事情,就是隊(duì)友們相互指責(zé)——老蔡接受了兩年多的訓(xùn)練,他和小梁都很清楚這個(gè)規(guī)矩。然而,林知夏似乎不明白,或者,她就是覺得把事實(shí)說出來也沒什么要緊的。
老蔡扶住額頭:“林知夏,你今年多大了?”
林知夏往后挪了一寸距離:“我今年十二歲……虛歲十三歲,馬上就十四歲了。”
老蔡指了指自己,又指了指小梁:“我們比你大好幾歲。”
“我們的靈魂都是平等的,”林知夏喃喃自語,“無論我是十二歲,還是九十二歲,我都會(huì)相同的態(tài)度來對(duì)待你。”
小梁“嘖”了一聲:“你今年是十二歲,不是九十二歲……”
林知夏記起她的正事:“時(shí)間好緊張,我可以先用電腦寫第四題嗎?”
老蔡忍無可忍,爆發(fā)道:“你把步驟寫下來,不行嗎?答錯(cuò)了會(huì)扣分。你是人,不是神,你犯錯(cuò)了,隊(duì)友就要給你收拾爛攤子,你十二歲也該懂事了?”
林知夏緩了兩秒鐘,與他針鋒相對(duì)道:“你能不能不要攻擊我的年齡?我確實(shí)會(huì)犯錯(cuò),每個(gè)人都會(huì)犯錯(cuò),只要我們把錯(cuò)誤改正,那段經(jīng)歷就是有意義的。”
老蔡崩潰道:“你別跟我扯雞湯。”
林知夏耐著性子解釋道:“我可以把第四題的步驟寫下來,但是第四題是遞歸指數(shù)函數(shù),我要用數(shù)論的方法寫,再套用費(fèi)馬歐拉定理。我看到現(xiàn)在沒人在用鍵盤,我才提議讓我來寫程序,然后我借助代碼,再和你們?cè)敿?xì)解釋。這對(duì)你們來說,會(huì)比我手寫的內(nèi)容更清楚。我也可以在紙上寫完程序代碼,再謄抄到編譯器里……只是這樣一來,你可能沒辦法檢查我的每一個(gè)步驟,因?yàn)榇a注定是簡(jiǎn)潔又跳躍的,你不能憑借肉眼去Debug。”
“Debug”是編程用語,指的是“解決程序故障”。
老蔡沒有接話。他的視線聚焦于顯示屏。
省立一中的排名仍然在下滑。還有一個(gè)非洲國家隊(duì),升到了省立一中的前一位。
非洲隊(duì)?
在老蔡的印象中,非洲是一塊不發(fā)達(dá)的地域。他看過非洲一座城市的紀(jì)錄片——那座城市的外圍就是非洲草原,獅子、羚羊和斑馬快樂地奔跑在城市郊區(qū),給他帶來了極大的震撼。
他,竟然被非洲隊(duì),超過了。
老蔡甚至不確定,非洲隊(duì)的學(xué)生們,日常生活安不安全,會(huì)不會(huì)被獅子追逐,被豹子戲弄,被大象威脅。
而他,在省立一中好吃好喝地接受訓(xùn)練,享受著食堂大廚的悉心款待,竟然比不上一支來自非洲的隊(duì)伍。
老蔡的胸口生出一團(tuán)悶氣,不上不下,阻塞肺管。他緩聲陳述道:“你拿了羅馬尼亞大師賽的金牌,還來參加信息學(xué)科的競(jìng)賽,老師非要把你塞進(jìn)我們組,擠掉了我們?cè)瓉淼年?duì)友。我和那個(gè)被擠掉的人,是中學(xué)五年的好朋友。老師們非說你聰明,你實(shí)力強(qiáng),你能干,你有天賦。行,好吧,我同意你入隊(duì)。你還是給我們扣了四分,這就是你的實(shí)力?”
林知夏坐在椅子上,向后挪動(dòng)一段距離。她不想再聽老蔡說話了。
尤其,當(dāng)老蔡說到,他和那個(gè)被擠掉的隊(duì)員,是中學(xué)五年的好朋友,林知夏一下子想起了江逾白。如果有誰把江逾白的位置擠掉了,林知夏一定會(huì)非常生氣的。
可是,信息教練并沒有告訴林知夏,老蔡、小梁和那個(gè)人是好朋友,是常年在一起訓(xùn)練的隊(duì)友。
教練只說:老蔡、小梁、林知夏,你們?nèi)齻€(gè)人最適合組隊(duì)。林知夏,你的性格和心態(tài)都很好,還拿到了國際比賽的數(shù)學(xué)金牌。你和老蔡小梁組隊(duì),肯定能捧回IHSPC的獎(jiǎng)杯!
林知夏的心情很低落。
老蔡還在指責(zé)她:“第五題第一次報(bào)錯(cuò),你說我少考慮了一種情況,把我往歪路上指,丟了七分,這幾次折騰完,非洲隊(duì)都能反超我們……”
“我已經(jīng)承認(rèn)我錯(cuò)了,”林知夏看著越走越近的監(jiān)考老師,有意識(shí)地降低自己的音量,“這本身就是一個(gè)事故,我們應(yīng)該平攤風(fēng)險(xiǎn),平攤后果,因?yàn)槲覀兪且粋€(gè)團(tuán)隊(duì)。”
IHSPC規(guī)定,參賽選手可以小聲討論,但不可以大聲喧嘩。
老蔡的嗓門稍微有點(diǎn)大,影響了坐在他后面的新西蘭選手。
新西蘭選手向監(jiān)考老師反饋情況。老師口頭警告省立一中的隊(duì)伍:“Excuseme,couldyoupleaseloweryourvoice?”
林知夏慌忙道歉:“Sorry,myteammatesandI……”
林知夏還沒說完,老師止住了她的話:“Thatisallright.”
說完,老師就走了。
小梁縮在角落,沒聽清這位監(jiān)考老師的英語問答。他問起林知夏:“出什么事了?”
林知夏轉(zhuǎn)述道:“老師讓我們聲音小點(diǎn)。我說了對(duì)不起,老師回答沒關(guān)系。”
突發(fā)的狀況接二連三,林知夏和她的隊(duì)友都有些心不在焉。林知夏還想寫第四題,小梁圓場(chǎng)道:“算了算了,我們先做第六題和第七題吧。”
老蔡正在電腦上寫第六題。他反復(fù)編譯了好幾遍。小梁和林知夏幫他建立一組輸入輸出的數(shù)據(jù)標(biāo)準(zhǔn)。
賽場(chǎng)上的時(shí)間逃得飛快,省立一中的排名升上去三回,又掉了四回。老蔡的背后出了一層薄薄的汗水。雖然,第六題回答正確,但是,他的方法耗時(shí)較長,最終得分偏低。他試著換了一種方法,結(jié)果,第六題變成了“Error”。他不僅沒掙到分,還造成了一點(diǎn)損失。
他快速穩(wěn)定自己的情緒,把剩下幾道題分派給隊(duì)友。
林知夏一手撐著腮幫,開始閱讀第十題——第十題是本次比賽的壓軸大題,涉及復(fù)雜的積分幾何。積分幾何原本是林知夏最擅長的領(lǐng)域之一,但是,在她把數(shù)學(xué)思維轉(zhuǎn)化為程序語言的時(shí)候,俄羅斯隊(duì)伍已經(jīng)把第十題做出來了。
那一支俄羅斯隊(duì),剛好坐在林知夏的正對(duì)面。
三位俄羅斯男生滿臉笑容,無聲地慶祝勝利。他們比第二位的浙江隊(duì)高了十幾分,似乎注定要把本次比賽的金牌收入囊中。
浙江隊(duì)正和一支韓國隊(duì)打得難分難舍。每當(dāng)韓國隊(duì)超過浙江隊(duì)幾分,浙江隊(duì)又會(huì)瘋狂地追上來。隨著比賽的推進(jìn),浙江隊(duì)甚至咬上了俄羅斯隊(duì),只比俄羅斯低了三分。
林知夏看著電腦屏幕,悄悄地為同胞們鼓勁:“浙江加油,浙江加油,快點(diǎn)超過俄羅斯。”
老蔡的媽媽是浙江人。他有些后悔自己為什么不在浙江隊(duì)。
老蔡徒勞地刷新著頁面,浙江隊(duì)的分?jǐn)?shù)經(jīng)常發(fā)生變化。老蔡干脆把頁面關(guān)掉了。他繼續(xù)和隊(duì)友們討論題目,卻又發(fā)生了新的分歧,這一回,老蔡和林知夏的意見一致,而小梁卻和他們有不同的看法。小梁還說:“要是阿周在,阿周會(huì)站在我這邊。”
這位“阿周”,就是那個(gè)不幸被篩掉的隊(duì)友。
隊(duì)伍內(nèi)的氣氛更低迷。
截止到比賽結(jié)束時(shí),省立一□□計(jì)答對(duì)了六道題,報(bào)錯(cuò)許多次。他們的最終排名是第二十四位,獲得了一個(gè)參與獎(jiǎng)。
起初,林知夏沒有感到很難過。幾乎在矛盾爆發(fā)的那一刻,她就已經(jīng)預(yù)料到了結(jié)局。
可是,在回程的路上,老蔡和小梁在教練面前攬下了一切責(zé)任。他們說,這次比賽之所以會(huì)有這么大的失誤,是因?yàn)樗麄冊(cè)谫悎?chǎng)上的狀態(tài)不佳。兩人都沒提起林知夏在第五題上犯的錯(cuò)。
林知夏私下里詢問老蔡,老蔡卻說,第一,他和小梁確實(shí)沒穩(wěn)住情緒,第二,他以前和阿周做隊(duì)友時(shí),習(xí)慣了替阿周解圍。
當(dāng)他們回到省立一中,信息學(xué)科的兩位教練都是一副痛心疾首的樣子。原來,本次的IHSPC最終排名,是省立一中歷年來的最差成績。
去年的賽場(chǎng)上,省立一中摘得了銅牌。
而這一次,省立一中只有一個(gè)微不足道的參與獎(jiǎng)。
林知夏后知后覺。她有些茫然地離開高中部,走回初三(十七)班的教室。她在俄羅斯莫斯科的慘敗經(jīng)歷,早已傳回了初三年級(jí)。十七班的同學(xué)看見她進(jìn)門,沒有一個(gè)人出聲,大家都不知道要怎么安慰她。
林知夏安靜地坐回自己的座位。
江逾白偏過頭,看著她:“林知夏?”
林知夏聲音極小。她自言自語道:“你不要叫我了,讓我一個(gè)人想一想,問題究竟在哪里呢?是不是我的參賽態(tài)度不夠認(rèn)真……可是我盡力了,我不敢吵架,聲音太大會(huì)被取消參賽資格,還會(huì)影響我們學(xué)校的下一屆選手……我也不知道該怎么辦。我說的方法,他們不相信。他們的方法,我也不相信,到了后來,我就變得比較消極,比較低落……訓(xùn)練期間,大家都是很好相處的,可是到了比賽的時(shí)候,我的心態(tài)也變了……”
“林知夏,”江逾白打斷她的話,“每個(gè)人都會(huì)被環(huán)境影響,你別自責(zé)。”
林知夏淚眼汪汪:“我們學(xué)校上一屆還是銅牌。”
“我們學(xué)校一百年前不允許女生入學(xué)。”江逾白忽然拋出這樣一個(gè)觀點(diǎn)。他說:“傳統(tǒng)不是規(guī)律,不可能一成不變,林知夏,你是非常優(yōu)秀的學(xué)生。”
江逾白話音剛落,近旁的窗戶被人敲響。
林知夏的座位靠窗——她總是喜歡坐在窗邊。她抬起頭,看向窗外。
金百慧抱著一本筆記本,站在十七班的教室外。她的目光穿透了玻璃,直達(dá)林知夏的雙眼:“你考了第二十四名?這是我聽過的最差的名次。你根本沒有努力吧。”