作者:是軌跡吶
標記說明:
code
,地點,演算法武技、演算法功法
上篇
演算法大陸,諾伊宗,核心弟子居住區。
一個面容清秀的少年正站在元始碑之下,望著碑上的文字默默禱告。那碑上,用黃金鑄就的一行程式碼閃閃發亮:cout<<"Hello, world!";
。
元始碑是演算法大陸的一種古老的傳承,修煉每一種語言的碼農都會在自己勢力、住所的各個地方,放上一塊元始碑,上面記載著自己這一門語言輸出“Hello, world!”的方法,稱作元始之碼。據說這一傳承來自於上古神尊 Brian Kernighan 與 Dennis M. Ritchie 的功法《The C Programme Language》,以其簡潔、實用之美而流傳至今。
而 cout<<"Hello, world!";
正是 C++
語言的元始之碼。
“斯特勞斯特魯普在上,請保佑我明日四宗大比順利!”
少年名為程儺nuó,是諾伊宗的核心弟子之一。明天就是五年一度的由演算法大陸四大 C++
宗門——諾伊宗、埃甌砈宗、西斯皮宗以及諾伊皮宗——聯合舉辦的演算法大比了。屆時,無數強者都會到來,20歲以下的各宗優秀弟子將會被投入禁地 葡園 進行生存比賽,最後獲得的演算法結晶最多的宗門勝利。
祈禱過後,程儺回到住所,抓緊翻看高精度運算、Bellman-Ford 等自己還不太熟悉的演算法武技,他想與諾伊宗眾核心弟子一起 AK 明天的比賽。
第二天早上,天空萬里無雲,陽光明媚。葡園 的入口早已是人山人海,四大宗門在這齊聚一堂,共同開啟四宗大比。只見得諾伊宗宗主凌自羽右手一揮,數千個字元組成的金鑰漩渦注入了 葡園 入口大門暴露出的介面,其餘宗門宗主也分別打出了自己掌管的金鑰。
“轟轟轟”,一陣沉重的聲音響起,大門開啟。無數的數字0和1在門口盤旋,似乎要衝出來,卻被一股無形的力量牢牢困住。
程儺等人只覺眼前閃過了一些陌生的字元,隱約有著 MOV
、XCHG
等程式碼。然後就眼前一黑,再一睜眼,便來到了一個陌生的地方。
“剛才那是......組合語言的力量?”程儺喃喃自語道。
正在他晃神之時,一聲獸吼把他拉回了現實。一隻OI獸出現在他的眼前。
程儺一眼便看出這是一隻並查集模板獸,他當即雙手凌空虛劃,幾十行程式碼逐漸成型。
“路徑壓縮!”
程式碼中的合併與查詢函式一經改造,充滿了無窮的威勢。程儺左手一揮,程式碼便注入了那隻OI獸。它的表面閃過幾行數字,隨即解體成了0和1,只在原地留下了一團由一串字元構成的球狀物。
“這麼小的資料範圍,估計打個暴力法都成。”程儺走上前去,拿出一個光滑的黑色裝置。
隨著裝置被啟動,那裝置緩緩地發出低沉的嗡嗡聲,將球狀物吸入其中,並閃爍著光點表示吸收完成。
這個裝置是宗門內的大能寫出的類例項化的物件,用於獲取區塊之源,也就是OI獸掉落的物品。而這個區塊之源所基於的網路節點乃是這一方天道,天道不滅,世界不毀,它就不失效。這是打OI獸能夠掉落的珍貴物品,也是衡量這次比賽勝負的一個重要依據。
“現在......得去和其他人會合一下。”程儺思忖一會兒,開始四處尋找,
不一會,一個熟悉的身影便映入眼簾——核心弟子令松,在他的面前,一隻二分模板獸正在吐出資料,只見他拔出一柄樸實無華的劍,虛點幾劍,幾行程式碼湧出,便將這隻OI獸輕鬆拿下。
“前輩鑄就的STL之劍果然強大。”程儺拍了拍手。
令松笑了笑,把區塊之源收起來:“是啊。”
“接下來要去哪裡呢?”程儺拿出宗主給的地圖,上面大致畫顯示幾個區域,並表明可能出現的怪物的等級與難度顏色,等級代表怪物的資料量,而難度顏色代表著演算法水平的要求。從低到高分別為紅、橙、黃、綠、藍、紫、黑。
葡園 每隔五年便會大變一次,也就意味著這個地圖是隨著 葡園 的地形改變實時重新整理的,只有進了 葡園 才會顯示內容。
“這個地方怎麼是灰色的?”令松敏銳地察覺到了地圖的一角,一塊只寫了“分割槽114”但沒有寫其他內容的地方。灰色代表著未分級,代表這一帶的力量無法被地圖所識別。
“該不會是有什麼好東西吧。”程儺明白各大宗門年輕一輩之間的水平相差不大,如果只是循規蹈矩,沒有出彩的地方,也就不會有好的成績。而那些在地圖上被標記為黑色的區域裡的OI獸實力太過強大,就算是他這個核心弟子也只打過區區一隻,還纏鬥了一個早上之久。傳聞中這個 葡園 中有著許多神秘的奇遇,若是在“分割槽114”能遇到奇遇的話,不僅勝利的希望更大,自己和隊友也能得到提升。
程儺和令松對視一眼,彼此眼中都閃過一絲冒險的火花。
“走,去看看。”令松向“分割槽114”的方向走去,程儺也跟了上去。
沒過多久,二人便走出了橙色區域,前方是黃綠區域,可能會出現黃色、綠色級別的OI獸。
程儺隨手寫下一個 Prim
演算法,解決掉了一個最小生成樹模板獸;又劃出一個 A*
演算法,幹掉了一個八數碼獸。令松也解決掉了幾隻搜尋類的OI獸。沒走多久,兩人就已經得到了十幾個黃、綠級別的區塊之源。
“前面就是分割槽114了。”程儺放慢腳步,轉頭對令松說道。
“這裡的天道好像有些異樣。”令松的身邊有程式碼閃過,“咦,這裡的......”
話還未說完,只聽“轟隆”一聲,一隻巨大的OI獸出現在程儺面前,一串串資料鋪天蓋地地湧來。
這是一隻綠色等級的點雙連通分量模板獸,體型之大昭示著其資料量之大。
程儺雙手快速揮舞,一個 Tarjan
演算法正在迅速成型。待到最後一個字元寫完,程儺雙手一震,那程式碼卻突然一凝,瓦解開來。天道法則之力湧動,一個亮黃色的 CE
出現在程儺面前。
“這裡的名稱空間被動了手腳!”令松對程儺大聲喊道,同時手上也不停地在寫著程式碼。
程儺聽到後,雙手收束,喚出剛剛編譯失敗的程式碼,在其中插入了一行 using namespace std;
。再一震,這次程式碼順利地編譯,化作字元流衝向OI獸攻過來的資料,摧枯拉朽般直衝源頭。
幾秒後,這隻OI獸的測試資料耗盡,隨著一聲悲鳴而崩解,留下一個冒著綠光的區塊之源。
未完待續