深秋的編程競賽像片烏云壓在南鳶璃頭頂。當(dāng)她對著屏幕上第23次報錯的哈希表抓耳撓腮時,虞北念正舉著手機(jī)在宿舍里上躥下跳:“璃璃快看!姚屹學(xué)長在籃球場!穿白球衣那個!”
屏幕里的姚屹剛完成一個三分球,汗水順著下頜線滑落,白色球衣被風(fēng)揚(yáng)起,露出腰側(cè)一小截冷白的皮膚。南鳶璃的鼠標(biāo)指針在代碼編輯器里晃了晃,不小心把“哈希函數(shù)”寫成了“姚屹函數(shù)”。
“別看了!”虞北念一把搶走她的電腦,“再看哈希表都要吃醋了!趙嘉聿說姚屹打完球就過來,你好歹收拾下桌面??!”
南鳶璃這才驚覺書桌上堆滿了薯片袋和草稿紙,最上面還壓著張畫廢的“棲云閣”光影速寫,角落用鉛筆描了無數(shù)遍姚屹的簽名。她手忙腳亂地整理時,宿舍門忽然被敲響,姚屹站在門口,手里拎著兩杯熱可可,發(fā)梢還沾著未干的汗珠。
“聽說你在啃數(shù)據(jù)結(jié)構(gòu)?”他把可可放在堆滿代碼書的桌角,目光掃過屏幕上的報錯信息,“這個哈希沖突的解決方案,試試用鏈地址法。”
他俯身指點鍵盤,雪松混著汗水的氣息將她包圍。南鳶璃能看見他手腕上若隱若現(xiàn)的青筋,聽見他講解時喉結(jié)滾動的輕響,直到屏幕上的錯誤提示終于變成綠色的“編譯通過”,才發(fā)現(xiàn)自己的手指一直僵在回車鍵上。
“謝……謝謝學(xué)長?!彼舆^熱可可,玻璃杯的溫度燙得指尖發(fā)麻。
姚屹沒說話,只是拿起桌上那張畫廢的速寫,指尖劃過紙上重疊的簽名。南鳶璃的心跳瞬間快過了剛跑通的遞歸算法,正要解釋,他忽然指著畫里棲云閣的飛檐:“這里的光影透視,和我上次改的燈光參數(shù)吻合?!?/p>
虞北念在旁邊憋笑憋得滿臉通紅,借口去水房給兩人留出空間。宿舍里只剩下鍵盤的輕響和熱可可的氤氳熱氣,姚屹忽然從背包里拿出個U盤:“這是我寫的算法模板,應(yīng)付競賽應(yīng)該夠了?!?/p>
U盤外殼是磨砂質(zhì)感的黑色,上面用激光刻著個極小的像素化飛檐圖案。南鳶璃想起攝影展海報上的金色光帶,想起琴房里交疊的琴鍵,忽然鼓起勇氣:“學(xué)長,其實我……”
“姚屹!”趙嘉聿的大嗓門突然從樓下傳來,“林晚晴找你說設(shè)計展的事!”
姚屹皺了皺眉,看向窗外的眼神冷了幾分。南鳶璃攥緊了手里的U盤,看著他轉(zhuǎn)身時欲言又止的樣子,忽然想起編程課上老師說的:“指針指向的內(nèi)存地址一旦改變,之前的引用就會變成野指針?!?/p>
她不喜歡這種不確定的感覺,像哈希表永遠(yuǎn)解決不完的沖突。
競賽當(dāng)天,南鳶璃抱著姚屹給的U盤走進(jìn)考場,卻在第一道題就卡了殼。題目要求計算建筑圖紙的最優(yōu)采光角度,她盯著屏幕上的三維模型,忽然想起姚屹筆記本里畫的光導(dǎo)管示意圖,想起他說“星軌和拋物線的交點是最佳角度”。
當(dāng)她用姚屹寫的算法模板跑完最后一個測試用例時,考場外已經(jīng)下起了初雪。虞北念舉著傘蹦蹦跳跳地跑過來:“璃璃!你拿了金獎!姚屹學(xué)長在領(lǐng)獎臺等你呢!”
頒獎典禮的聚光燈晃得人睜不開眼,南鳶璃捧著獎杯走到臺上,看見姚屹站在領(lǐng)獎臺邊緣,手里拿著件黑色的外套。林晚晴站在他旁邊,正說著什么,他卻目不轉(zhuǎn)睛地看著她,眼神像初雪一樣干凈。
“下面請金獎得主南鳶璃同學(xué)發(fā)表獲獎感言?!?/p>
南鳶璃深吸一口氣,握緊了獎杯:“我要感謝一位學(xué)長,他教會我用代碼解析光影,用設(shè)計圖理解浪漫?!彼聪蛞σ?,看見他眼中閃過一絲驚訝,“其實很多時候,最優(yōu)解不是計算出來的,而是像哈希表找到正確的鍵值對,像指針終于指向了對的內(nèi)存地址——”
她的聲音在寂靜的禮堂里回蕩,姚屹忽然邁步走上臺,在所有人的注視下,將手里的外套披在她肩上。那上面還帶著他的體溫,混著雪松和陽光的味道。
“我來補(bǔ)充一下,”姚屹接過話筒,目光始終沒離開南鳶璃,“正確的指針需要雙向引用?!彼麖目诖锬贸鰝€東西,舉到鏡頭前——是個銀色的像素化飛檐吊墜,和他U盤上的圖案一模一樣。
林晚晴的臉色瞬間變得慘白,在臺下的抽氣聲中,姚屹將吊墜輕輕掛在南鳶璃的獎杯上:“這個哈希鍵,我找了很久?!?/p>
初雪越下越大,落在禮堂的玻璃窗上,融化成水痕。南鳶璃看著姚屹眼里的自己,忽然想起他給的算法模板里,有段注釋寫著:“致那個能讓光影與代碼共振的女孩”。
原來所有的“順便”都是刻意,所有的“巧合”都是預(yù)謀。就像他故意留在設(shè)計院樓下的草圖,像他“剛好”出現(xiàn)在籃球場的傍晚,像他此刻披在她肩上的外套——每一個指針的跳轉(zhuǎn),都精準(zhǔn)地指向了名為“南鳶璃”的心動地址。
頒獎典禮結(jié)束后,姚屹牽著她走在落雪的梧桐大道上。雪花落在他發(fā)梢,他忽然停下腳步,從口袋里拿出個藍(lán)色的絲絨盒子:“上次在琴房沒說完的話,現(xiàn)在可以說了?!?/p>
盒子里躺著枚銀戒指,戒面是鏤空的像素飛檐,內(nèi)側(cè)刻著極小的代碼:“while(love++){kiss();}”
南鳶璃的眼淚忽然掉了下來,砸在戒指上,像給這段代碼加上了溫柔的注釋。姚屹幫她戴上戒指,指尖劃過她指腹的薄繭——那是常年按快門和敲鍵盤留下的痕跡。
“這個循環(huán),”他低頭吻去她的眼淚,聲音溫柔得像雪落的聲音,“我希望能運行到時間的盡頭?!?/p>
遠(yuǎn)處的鐘樓敲響了整點,雪光映著姚屹含笑的眼睛,南鳶璃忽然想起編程課上那個經(jīng)典的問題:“如何讓指針永遠(yuǎn)不成為野指針?”
答案此刻就握在她手里——當(dāng)兩個指針互相指向,彼此引用,就能在名為“我們”的數(shù)據(jù)結(jié)構(gòu)里,構(gòu)建出永不崩潰的浪漫算法。
她拿出手機(jī),點開備忘錄,打下新的一行字:
“姚屹學(xué)長,你的指針已成功指向目標(biāo)地址,請求永久綁定?!?/p>
發(fā)送成功的提示彈出時,姚屹的手機(jī)恰好震動了一下。他看著屏幕輕笑,將南鳶璃的手塞進(jìn)自己口袋,在漫天飛雪中,走出一串深淺交疊的腳印。
而不遠(yuǎn)處的宿舍樓上,虞北念舉著望遠(yuǎn)鏡尖叫:“趙嘉聿!快給我拿降壓藥!他們在雪地里親起來了!學(xué)神的代碼果然是甜的!”
雪越下越大,將南洲大學(xué)的梧桐道鋪成了銀白色的童話。而關(guān)于代碼與心動的故事,才剛剛按下運行鍵。