Farewell, OI!

聽說寫退役感言是傳統,那我也寫一個吧……

 

似乎很多OIer會對信息學競賽懷有一種特殊的感情,我可能沒那麼強烈。NOI之後,我最主要的感受就一條:結束了,終於結束了。

 

初一最早聽說有信息學競賽的時候,我其實是拒絕的,因爲當時我是一個搞數學競賽的騷年……但還是抱着試一試的心態去了,結果就一發不可收拾,初中是OI數競一塊搞,高中就翹掉數競全力搞OI,直到現在。

 

我對於OI的記憶大致分兩半:一半是浮躁,一半是幹活。

 

浮躁的自然很爽。

初中被xwy、cjj、xys、sqh等一堆人帶着打CS,NOIP前聯機大家被專家BOT血虐,怒而上半自動狙+屏幕中央小紅點。

初三愉快地和高中的OIer搬到一起,開始和zjm、wyf、cyr、光神、峯神等一堆人連紅警,機房最多湊過八人局,幾十輛V3火箭車在河邊排開,導彈在空中爆炸的氣浪讓對面的防空車跳起。

連求生之路,四人打劇情始終過不去遊樂場那一關,站在臺子上總是被Smoker拖下地然後被各種吊打……

連MC,我的最愛是建一個深埋於地下的掩體當家,然後在地底種上農作物等一套完整的維生體系,這個事在不同的服務器裏幹了好幾次,其中只有一次是最滿意的,連樹都種上了。

每次出去比賽都是浮躁高峯,一堆人趴在賓館牀上連紅警/CS的感覺不能更贊。CTSC/APIO2014時人太多,把酒店房間都給弄跳閘了……

高二,上一屆機房黨紛紛退役之後浮躁的就少多了,也就是看電影、WOT啥的。電影倒是真看了不少。

 

幹活……內容比較複雜。

初中就是各種花式刷題,找COGS上歷年省選和NOI試題刷。

高一開始刷USACO Training,然後刷歷年集訓隊論文,刷完了刷集訓隊互測題,刷了兩年的互測題再刷集訓隊作業,14年是50道TC,15年是100道CF和50道USACO月賽/GCJ,我刷完100道CF後刷了幾道USACO,就結束了。

總共做了有1000多道題,但我最開心的倒不是刷了多少題,而是往COGS上添了幾百道題目,大概就三塊:整理了一套完整可做的USACO Training列表(除了Chapter 6);把00年開始的集訓隊論文題中能放的都放到了COGS上(當然也有我自己懶沒寫的,就跳過了_(:з」∠)_);把11年和12年的集訓隊互測題放了上去(也有少數沒放的……)。剩下還有一些零散的TC/CF/USACO,我看着有意思就放+博客寫題解,沒意思就罷。還有劉汝佳訓練指南上的一些題,包括插頭DP那一節的全部題目,個人感覺這是我OI生涯中幹過最毒瘤的事情了,哈哈。這些題有不少人做,包括衡中以ztx爲代表的若干神犇和十一中的Chenyao神犇,還有我校的wjx、zlx、lyc……總之,後人如果也做這些題的話,就不用像我這樣花式Google數據和花式隨機造數據了。

 

當然還有出去培訓和比賽。

初一的時候參加了HAOI初中組,寫了個大暴力排序(當時還只會選擇排序)+騙樣例,貌似拿了個第6名啥的,當然初中組這種蒟蒻水平都是小朋友自己玩……

初二參加了NOIP普及組,拿了個250分(貌似報名費就是250……)。

然後參加了HAOI高中組,以爲A掉了“外星人”那道題,還興奮地給小夥伴們講做法,結果後來發現是錯的_(:з」∠)_。

初三NOIP2012提高組考了200多分,好像是二等獎。

13年冬令營去晃了一圈,那次是在電子科大辦的,住一個不近不遠的酒店,那次翹了所有的晚上講課蹲在酒店玩遊戲,翹了半天(貌似)英文講課去看007電影。現在還記得有一位教授講的,用程序模擬合肥託卡馬克裝置中氦轟擊對容器壁的影響(應該是這,只記得大意了),他說“講這些不是爲了讓你們聽懂,而是爲了讓你們開闊眼界”,深以爲然。王宏講IOI題目出很長的原因是爲了防止領隊泄題,還說個人感覺韓國隊幹過這事(……)。電子科大的早餐非常好,閉幕式搞了個會餐,飯和節目都不錯,excited。那次是用常老師的名義去的,所以沒有參加比賽,比賽那天在賓館對着紙質題面愉快地寫了大暴力,晚上麗潔講題全程沒聽懂,發現自己真是什麼都不會啊……

13年參加了APIO,但沒參加CTSC。APIO是在北大,比賽前河南衆人繞着未名湖散步,路上和鄭外的ck神犇(ps:此君特點是喝水多,曾有在省實驗到火車站的公交上幹掉2.5L水的光輝事蹟)扯了半天地震武器,雲爆彈啥的。比賽用的是Dev-C,還摸索了半天用法(當時英語渣)。我作爲一名蒟蒻專攻提交答案題(因爲前面兩道都不會……),在線顯示得了40來分,出成績的時候貌似又成了20來分,總之胸牌滾粗。考試結束之後大家說去喫KFC,在1.7公里外有一個,結果走了半小時纔到,ck曰:望山跑死馬啊……

13年NOI打了個醬油。Day1大暴力,Day2大暴力,提交答案題大家都是全輸0,能得十來分,我不知道腦子怎麼抽了全輸1,就兩分,恰好彌補了筆試丟掉的兩分,結果總分250(我跟250有緣……),銅牌線245,於是卡線銅牌,對了,多那5分還是來自於某道重評後給大家都加5分的DP題╮(╯▽╰)╭

值得一提的是NOI2013的團抗。這一年的團抗是“圈地爲王”,我、cyr、wyf等人分工合作,在嘗試後寫了一個能搜索11步的程序,後來證明這個思路是正確的,高分的各隊都這麼做。當時缺乏寫長代碼的經驗,搞的有點混亂,直到NOI上還在完善代碼。弄了個什麼“威懾度”,用各種加補丁的方式試圖解決了“邏輯鎖死”問題,反正個人感覺代碼寫得一片雞飛狗跳。最終決賽現場歡樂無比,比如喪心病狂的河北代碼(在最初的策略失敗後改成追着人跑,誓死把你拖下水……),衆多異常退出的錯誤,還有代碼奇異的走位……最後拿了第6,獎品是ipod shuffle,看着近1800行的代碼還是很有成就感的。

NOI2013是在電子科大另一個校區辦的,宿舍有水有電沒空調,湖南隊出去住還被杜子德批判了一番。

高一,NOIP2013拿了450分,終於有了一等獎……

WC2014持續打醬油。這次是在八十中,看守甚嚴不讓外出,於是我們請了一次假,去外面超市搬了兩箱零食回來。講了哪些課,其實我已經不太記得了,只記得我們帶着插線板搶佔最後排中央唯一的插座,然後給旁邊衆人插線板接插線板,最長轉接三次……應景的是,有一道題大致就是給個電阻網絡,求等效電阻。這次也是最簡單暴力+提答,甚至連稍微複雜一點的暴力都沒寫,然後就奇奇怪怪地拿了個銅牌。

HAOI2014穩妥進隊(題比較水,有個計算幾何題本來過不了,但沒出坑人數據)。zjm提前交卷,悲劇地被監考老師認成初中生,發了初中的密碼……結果卡線沒進隊。wmy也沒進隊。

APIO/CTSC2014都去了,是在北航。首次見到了Chenyao神犇。這次考試也是各種跪,APIO非常傻叉地專攻一道Tree DP,結果前面的簡單暴力都沒寫。最後還是拿了兩個銅牌。沒進成北航的航空航天博物館,不開心。喝到了傳說中的北冰洋汽水。

然後去學軍中學培訓了一段時間。

然後是NOI2014,在深圳外國語。考前給省隊集訓出了兩套題,結果只做了一套,就和wyf去學軍中學培訓了。這次總之水平太弱,LCT不會寫,卡時也不會,提答找不出規律,KMP樹不懂,大暴力沒看出來,最後斜率優化DP還寫了個錯誤的鏈剖。卡銀牌線銅牌,之前清華夏令營籤的協議也沒用。

這次團抗是麻將,Chenyao神犇基本寫了全部代碼。他對大工程的控制水平比我高到不知道哪裏去了,最終代碼簡潔而優美。團抗現場他帶着我膜拜各省參賽隊,最後拿了個第二,獎品ipod nano。第一是甘肅,他們只去了兩個人,白白浪費一個ipad mini……╮(╯▽╰)╭

NOIP2014滿分。

WC2015之前和Chenyao神犇去學軍中學培訓。

WC2015是在學軍中學,住在對面的浙大宿舍。考試前一天,我們九個人愉快地去吃了一頓飯。考後又翹掉社會活動,去浙江博物館轉了一圈。考試拿了第一名,我也不知道怎麼回事,人吶都不知道,自己不可以預料。

APIO/CTSC2015是在人大。CTSC2015第一天寫掛了一點,第二天A了一道題,總之是一等獎。APIO滿分。

然後又和Chenyao神犇去學軍中學培訓。

NOI2015前又和Chenyao神犇去學軍中學培訓。NOI2015第一天考完,校方組織看《模仿遊戲》,在看到圖靈破解出密碼的時候,某人高呼“暴力出奇跡!”全場掌聲雷動。第一天300,第二天230,是花一上午寫了第三題,靈魂debug出425行代碼。一共630,總之終於進隊了。去了北大,不妨說個戲謔的理由吧:北大擅長搞學潮,哈哈。

 

我一直試圖給高一時從數學轉向OI找出原因。

OI較之數學更好進隊或許是原因之一,但當時我其實真心認爲數學競賽的含金量高於OI,故自招的機會也更大。

更深層的原因可能是內核上的。

數學本質是一種纖巧而優美的邏輯結構,像一件富麗堂皇而又精美繁複的藝術品。我欣賞這種美,也樂於學習這種美,但或許缺乏將其作爲畢生事業的熱情。

至於OI,不妨先看看別的。

我始終愛好“複雜而精確的機械”,對此不妨直觀地想象《模仿遊戲》中的破譯機器:無數齒輪、傳動軸、連桿相互齧合,在電機的驅動下轟鳴作響。這是工業和科學的勝利,是人類智慧和力量的榮耀。

不妨再想想別的。探測器沿着既定的軌道飛往深空,精度“相當於拋出一根針,讓它穿過50千米外的針眼”;恰到好處的中子射流在瞬間引爆氘化鋰;壓氣機將稀薄的空氣送入燃燒室,上千度高溫的氣體在噴口後形成明亮的馬赫環;垂髮裝置的頂蓋按次序打開,導彈在煙霧和火光中逐個升起……這是壯麗的,也是浪漫的,我所理解的“男人的浪漫”。

因此我總是對物理學和軍事裝備有一種情感上的喜好,直到四月份清華夏令營之前我還把“高考去某物理系/國防科大”作爲一種選項(當然後者的最大障礙可能是太胖_(:з」∠)_)。

不過,其實我也沒法真學這個,原因無他,手殘。不是普通的殘,是驚天動地的殘,是慘絕人寰的殘,是念天地之悠悠獨愴然而涕下的殘。從小到大的美術課,手工作品我一個像樣的都沒做出來過,畫畫被評爲“有幼兒園牆上塗鴉的風範”。所以我要真去了需要做實驗的專業,估計這效果跟楊振寧是一樣的,哪裏爆炸都想我,哪裏着火都有哥……

但是!編程不一樣。編程不需要手巧,會敲鍵盤就行。0就是0,1就是1,int main()就不是int mian(),long long long就是too long。我們可以窩在空調房裏寫出複雜性讓巴貝奇的差分機黯然失色的程序,而不用動手擰哪怕一個螺絲。不要999,也不要888,只要21天,只要21天,幫你完成機械夢想,手殘黨福音,包好,包好!

因此,我在OI中的成就感事實上並非來自於那一個個“Accepted”,而是“構築機械”的過程本身。將頭腦中的邏輯結構在屏幕上奠基、立柱、砌牆、封頂,“We have laid the wide foundations, built it skyward stone by stone”,這是何等快意!

這也可以解釋,我對OI的熱情隨着學習的加深實際上出現了某種程度的減退——因爲新的知識和技巧越來越少了,常用的各種算法模塊也已不再新鮮,題目更傾向於“腦筋急轉彎”,尤其是CF的題。USACO的這個問題倒少很多,大多都是好玩的數學題,這也是我喜歡USACO勝過CF的原因。學習OI仍然是一件令人高興的事情,但如果這次NOI失敗,我也不會選擇再考一年,因爲剩下的也多是腦筋急轉彎、刷熟練度和模塊拼裝,這不和高考一樣嘛。

在整個OI生涯中,我始終在說“不當碼農”,並似乎將其作爲了某種提高格調用的信條。但仔細看來,我也並非是“不當碼農”,而是“不當普通的碼農”,就是那種在公司裏寫一個xx模塊的碼農,我總是有種參與“爲國家/人類做貢獻的大工程”的衝動——要是有人找我給空間探測器/EAST/LHC寫代碼,我肯定第一個去。或者要是沒有涉密人員出國限制這種玩意,並且國家找我給飛機飛控軟件/火箭制導系統寫代碼,我也第一個去。用巴頓的話說,“二十年後,當你在壁爐邊,孫子坐在你的膝蓋上,問你:“爺爺,你當年在幹什麼呢?”你不用尷尬地乾咳一聲,把孫子移到另一個膝蓋上,吞吞吐吐地說:“啊……爺爺我當時在寫一個投放廣告用的數據挖掘算法。”與此相反,你可以直盯着他的眼睛,理直氣壯地說:“孫子,爺爺我當年在給國家研製狗孃養的戰鬥機!”

仔細想想也是中二感十足啊。當然,這是偏頗的——我完全知道有多少偉大的成就是在公司研究院做出的,也完全知道貢獻不分貴賤,因爲科學仰賴於無數隨機的探索,今天看似毫無意義的成果在明天就可能成爲文明進步的柱石,如橢圓曲線和開普勒定律,如非歐幾何和廣義相對論。但我就是本能地反感寫高頻交易,或着廣告投放之類的算法。情感必然是偏頗的,否則也就不是情感了。

 

上面扯了一通,其實並沒有什麼實際意義——空談誤國,實幹興邦嘛。作爲年輕人,多學習理論,提高自己的知識水平纔是最好的。向前!向前!向前!

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章