ACM大神之路自述

3xian之所在 
最後一天,漫天飄起了雪花,僞裝歡送我離去。

此次WF之戰不太順利,早期的C題大概花了1秒鐘構思,然而因爲輸出格式多了一個空格直到兩個半小時才逃脫Wrong Answer的糾纏。還好lynncui在期間獨擋一面過掉D。最終成績很差,然而沒有遺憾,從不遺憾。

相比之下,來自全球的隊伍讓我看到了很強大的實力,每一道題都有人過,包括SJTU欺騙性提交的H都被人幹掉了。身爲地球人我感到自豪。

WF之旅很奢華(Sample: 1300一晚的酒店,99一頓的早餐),活動不少,服務很好。但最終念念不捨的是各位一見如故的朋友們,至於爲何一見如故我也不得而知。按HH師傅說,That's what ACM brings to us。也感激於HH師傅做爲浙大教練,卻爲咱們攝下了更多的賽場瞬間。

早早就打算把今年做爲退役戰,由於我相信,大學生涯徹底耗散在一門競賽上是不太穩當的事情。然此次的經歷讓我特別捨不得各路朋友們,若是有機會仍是很想拉大夥喝一些酒,談一下天。雖然說退役,此後我仍然會找有趣的題目作作,仍然會投入不少時間在算法之中,但再也不關心比賽的事情。

最後一天,腦海裏全是這兩年ACM生涯的片斷。其實早就想記下ACM生涯中複雜的情緒,可擔憂把事情說得太明白會破壞一些友誼。現在想來,假若批判不是直白的,那麼讚美就是沒有意義的。

初出茅廬

剛踏入大學校門的時候,並無據說過ACM。跟班裏大都數同窗同樣,大一接觸C語言,但中學時候對ASP和Flash的AS比較熟悉。大一被fyj老師看中,進了一個研究生爲主的項目團隊,並無給我什麼任務,只讓我學東西,事實上也沒學什麼東西,卻是裏頭一個師兄給我接了一些私活,我一我的包作ASP的商城、論壇之類,完成一項大概花三個星期,報酬1000+。賺了一些錢以後就翹了一大片課,買機票去廈門跟前女朋友過日子。回想起來以爲有點難以想象。那時候確實過得很瀟灑,平時作各類各樣喜歡作的事情,班裏還有人拜我爲師學吉他。

大一上學期的期末,跟4h去喝酒的時候他首次提起ACM(其實他指的是OJ),我立刻表示這是一種頗有趣的事物,公平而富有挑戰性。當晚回去就跑到HDOJ嘗試,下面這個是處女交。

419087 2007-12-04 20:19:32 Wrong Answer 1000 0MS 0K 82 B C 3xian 

PS:HDOJ的A+B確實比較折騰,對於不瞭解OJ模式的人來講,哪裏知道用EOF來作什麼。

接下來的幾天很快就作掉了最大子串和,高精度加法什麼的。當初想按題號順序作,很容易想象,活生生被1007卡死了(二維最近歐幾里得點對)。那時候大號小號一共交了兩百屢次,最後是給水過去的——隨便按兩個方向排序,而後只比較相鄰的點。話說回來,即使是水過去已經不容易了,一個不知算法爲什麼物的土人,要想出經典的分治法和掃面線法都是不太可能的事情,更別說線性篩法。而這個題目給個人最大啓發是:原來C語言有qsort這種東西。

晚些找4h單挑了幾回,隨機抽題號,比誰AC得快,戰戰兢兢地全勝。





入隊

第二個學期的時候,在公共垃圾桶裏瞄見了一張ACM隊招新傳單,是的,是垃圾桶,我把它從垃圾桶裏掏出來了。必須的,跟4h一塊兒去面試。問,掛過科沒有。 我說我掛了歷史之類的。(其實還掛了高數,可是「之類」是一個海納百川的辭法……因此不算欺騙。一年以後領隊發現我掛太高數,一臉想踢我出隊的樣子。)接着,我被考到快排的時間複雜度,4h搶答nlogn。我說,我已經在杭電作了一百題了,夠不。曰,到時候看你校賽的表現。

後來校賽拿了第3名,前兩名大三的至今搞不清是誰。其實校賽裏頭有一道最大子串和,我沒讀懂題意,不然估計就奪冠了?反正是順利入隊,並直接被扔去省賽做敢死隊。當時我跟領隊說過這樣一句話讓他以爲特無聊,我說,明年的這個時候我確定是咱們學校最猛的。

另外當時隊裏最受寵的是06級的wjs,我又悄悄跟4h說,明年的這個時候,06級最猛的不是wjs,而是ccf。

ziliang

不得不提到這我的。ziliang是廣工ACM近代史的鼻祖,07年爲廣工奪得了的地區賽的首牌和首銀。一路以來給咱們指引方向,儘管細節上沒指點太多,其實也不必指點太多。在我看來他的思惟能力比如今的一批人高一個檔次,估計也是屬於百年孤獨的類型。
從我入隊開始ziliang就開始忽悠每個人。好比一開始僞裝師姐來掏咱們的底細,當時她(他)問我是否是搞過OI,我答:OI?OJ吧……
然ziliang的影響力之大也形成了很差的影響。隊裏的人都膜拜他,膜拜到天天都陪他在Q羣裏吹水。平均下來天天要吹兩三個小時甚至更多,這算不算是變相自殺。早期我試圖融入這樣一種氛圍,畢竟孤立難以生存。後來發現融得很不舒服,權衡以後選擇了屏蔽Q羣。事實上隊裏的這種現象歸根結底跟ziliang是無關的,不是他不知道本身在幹什麼,而是各位隊員不知道本身在幹什麼。

周賽

進隊以後咱們新生被組織起來參加周賽,也正是從這個時候開始,剛進隊的我就對整個團隊失去了歸屬感。原本按我入隊時候的實力來講,甩開第二名幾題應該沒有什麼問題,但事實上有時候我連冠軍的位置都不保。是的,從網上找代碼做弊的人太多了。不想點名也不必點名,男生很猖狂,女生也很猖狂。當時我看到不少可悲的現象,好比有些沒做弊的人由於被人狂虐而喪失信心而淡出ACM,好比有的人本身做弊以後私底下還跟我說誰誰誰做弊,好比帶隊老師根本就不關心咱們這兒發生了什麼。總的來講就是,廣工當時這麼菜的ACM隊,你們竟然還挖空心思經過坑本身人來知足那點可憐的虛榮,***做孽。

最初參加周賽的時候,我是無比的緊張,無比的投入,以致於後來無比的失望。以後不管是各類周賽,我看到ranklist上熟悉的帳號們我就不想再摸鍵盤。去年秋天我收取集訓總結的時候看到不少人都說我周賽的時候老是「火星般消失」,這個簡單的緣由,沒人體會獲得。

儘管如此,周賽之中仍是有一些搞笑的回憶,好比Lynncui勇於隨機勇於打表,好比wjs用一次不回溯的DFS水過了最短路,好比yqj企圖用long double過各類高精度,好比我大一比賽的時候「發明「了Prim、Disjoint Set,好比我從牙縫裏刷出芝麻的時候才發現爸爸媽媽在我周賽的時候作了各類補充能量的點心。

長進

從開始到如今,我迷戀於算法,而最終並無成爲一個優秀的ACMer。這一點跟ziliang相反,他不喜歡站在巨人肩上,他知道比賽最重要的是戰術和技巧。必需要看到,玩ACM跟玩算法是不一樣的事情,ACM是考驗智慧、考驗綜合素質的,我敢大言不慚地說,ACM玩得好甚至不須要去刻意學什麼算法。雖然咱們偶爾見到一些題目須要一些成熟的經典的算法,那些題目是我喜歡的題目,可是那些題目屬於最垃圾的ACM題目。另外一角度來講,不少人以爲本身ACM出成績了就表明本身算法不錯了,這是一種錯誤觀念,當你深刻任何一個方向的算法領域的時候,你會發現ACM那點東西過小兒科了,太不入流了。說白了,ACM是打着算法的幌子來讓你們比腦子。面試

粗略統計,鄙人兩年來作題1.6K,看國內外論文200+,看書十來本。最終變成如今這個樣子……什麼樣子我本身就不評論了,你以爲是什麼樣子就是什麼樣子。

對於ACMer來講,Matrix67早已放過話,「USACO你老老實實一個字也別看解題報告,作完你就無敵了」。咱們隨處可見一些作了不少不少題目實力還上不去的人,此類八成是是有看解題報告的習慣,其中包括想都沒想就衝進discuss裏頭瞄來瞄去。

不禁得想起一我的。08年秋天,ACM圈子冒出了一個博客點擊率很高的傢伙,叫zfy。他的出現讓很多人長了見識,不得不表示稱讚。原本他是一個做風不錯的人,可是在必定程度上讓一些人養成了新的壞習慣——作不出題就找論文,這跟找解題報告有什麼區別呢,就名字不一樣。咱們學校確定也有人以爲,三鮮是否是腦子被驢舔了,作個破題用不用看那麼多論文。事實上我基本不在作題的時候碰論文,假若二者糅合在一塊兒,最終結果基本就是這頭感覺不到論文的內涵,那頭題目也白作了。

其實在咱們這種環境下提升仍是比較不容易的,一來身邊沒什麼人能夠提供幫助,二來各路大牛也不喜歡搭理菜鳥。不少時候就須要死磕,一我的死磕。記得當初通宵磕V圖,通宵磕動態樹,過年回老家旁邊開幾圍麻將窗外小屁孩放炮竹我在黑燈瞎火翻譯後綴樹。如以前所說這些東西其實跟ACM關係不大,但我內心總會有一種感受,人家OI的娃們隨手拈來的東西你寫不出來就無法跟人家比。比如08年地區賽的網絡賽那回,人家紛紛秒殺的題目,咱們全校沒一我的據說過那些個算法的名字。

後來比賽經歷得多了,也慢慢給本身有了定位。時常在網上看到不少人比完賽長吁短嘆,也有些人號稱「原本有奪金的實力」、「沒發揮好」。我曾經也有段時間神勇地跑去作掉不少難題,一度覺得本身到了登堂入室的水平,後來發現徹底不是這麼一回事。真正的高手是什麼樣的,他們不須要吃飯時候的冥想,不須要靠洗澡時候的靈光一閃,他們比賽的時候坐在那兒就能熟練地作出各類難題,他們在讀錯題的時候能保證成績,在數據錯的時候能保證成績,在沒人敢提交的時候果斷提交,在比賽快結束的時候冷靜編碼。簡單來講就是,他們不只僅是作題能力強,而更是綜合素質強。比賽以後說太多「原本」、「若是」的人,屬於心理素質欠佳,這是綜合素質重要的一塊,也是阻礙長進的一塊。所以,當你沒有達到預期的目標,根本就不該該想着你丟了一塊牌,而應該想一想本身是否真的值那一塊牌。

境內境外

這個話題我之前寫過,可是刪掉了。

國內的ACM圈子老是表現出一種浮躁的風氣,儘管不缺少超強的人,但強人都很低調,或者說,強校更可能是閉門造車。能夠去看看國內ACM最火的POJ論壇,琳琅滿目的欠揍的東西:求/貼數據的、求/貼代碼的、叫人家來查錯的、日題目的、炫耀的、留名的、二三流人物相互膜拜的。看看站內信,多少是求代碼的(個人原則是問我思路的必定悉心回答,要代碼的一概無視)。再看看百度到的解題報告,多少是相互抄襲不求甚解的。

而國外,我不敢說得太完美,畢竟我對國外瞭解不算太多。首先一點,國外的OJ不多上述欠揍的東西。自從把作題重心放到國外的OJ,用郵件跟一些外國選手聯繫得愈來愈多,他們發郵件的時候會很是嚴謹,幾乎每一句都會給出證實,至少會有一個簡單的交代,有時候附件裏頭會附上幾篇論文。他們歷來不貼代碼,但若是你腦筋實在轉不過來,人家會問你是否須要代碼。尤爲是在SPOJ,我結識了俄羅斯/巴西/印度/美國/加拿大的朋友們,感謝他們給我帶來的全部的解題思路的啓發和作人態度的啓發。這裏說一個小插曲,曾經有一位朋友賜我兩篇俄文的極品論文,全文翻譯成中文以後儼然成爲天書,全文翻譯成英文以後仍然是天書,人肉翻譯成中文仍是讀不下去,最終人肉翻譯成英文而後反覆閱讀,終有所成……當時的壯舉讓宿舍裏直呼我是世界級一流選手算法

我認爲,國內信息學競賽成績強勁,而IT行業不見得強,從ACM這塊就看出端倪。咱們這兒大環境是明顯不如人的。我做一個不負責任的假設,假設全球全部閉門造車的經典強校都不許參加ACM比賽,那中國隊伍就是集體被虐。而行業的發展並不能僅僅依靠強校的寥寥數人。

Lynncui

該講講個人隊友了。首先最要感謝的就是隊友Lynncui,一直以來他對我都無比信任,而我卻老是在比賽的關鍵時刻表現出毛躁的一面,在此表示愧疚。因爲Lynncui年紀偏小,我很奇妙地見證了他這兩年從一個胡鬧的毛孩變爲成熟青年的過程。在咱們還沒入隊的時候,招新羣裏最高調的就是他,我很清楚地記得當時他咬定PE是由於源代碼格式不對……因而我直接把他歸爲**一類,萬沒想到Lynncui在將來會成爲我最最好的搭檔。

他屬於很清楚本身在作什麼的人,所以沒有動不動就看discuss、解題報告的陋習。儘管我有時候以爲他比較懶,並無花太多的精力在ACM之中,但因爲他的清醒和踏實,只要作一點,就能進步一點,只要花心思,就能見效果。我在咱們學校討論問題,基本上除了ziliang我就只找過Lynncui。不管是練習仍是比賽,他都能保持清晰的思路,儘管有時候向他灌輸一種新思想會感受他硬得像石頭同樣。因而咱們隊有一招最經常使用最有效的戰術:我有想法了就往Lynncui腦殼裏灌……艱難地讓他承認以後基本上就是無誤的,而後他坐我旁邊看着我寫,一交一個準。不幸的是WF的後半場我本身已經坐不穩了,也沒能說服他什麼。

固然,Lynncui的我的實力也不是蓋的,他的強項就是以窮人的身份參加各類編程比賽贏取衣服。上次GCJ好像排一百多名來着。

無論怎麼說,以他的作事習慣來看,之後確定不差錢。

4h

這是我最老的搭檔,個人每一場ACM比賽都跟他相伴。同時他是個人酒友和玩伴,相比之下ACM隊友這個身份反卻是有點遜色。4h入隊時候的天賦和知識背景都是很高的,但彷佛終究沒把ACM當回事。並且怎麼說呢,作題比較急功近利,以致於後期進步不明顯。曾經瞅見他下數據以後把過不了的數據直接打表AC的猥雜事……甚是憤慨。無論怎麼說,他一直能輕鬆地留在TEAM ONE,這就是他的本事,換個角度看,也是廣工ACM隊的悲哀。

對我來講,4h在個人大學生涯扮演者重要的角色。若是不是他跟我喝酒,晚上跟我處處去玩,廣工這地方真的不容易呆下去。

DieIng

這又是一個很信任個人人,感謝他。廣工裏頭,DieIng對ACM的熱情僅亞於我,混跡於各大ACM神羣,膜拜過各路神牛。DieIng比咱們3個晚幾個月進入集訓隊,幾乎沒有計算機的基礎。這傢伙也有很多壞習慣,可是特別勤奮,以致於有今天的成績。咱們集訓隊裏你們聽得最多的一句話就是DieIng說:又被三鮮鄙視了。我總喜歡挑他的壞毛病,由於我不忍心看着他的熱情在作無用功,但他好像以爲特委屈。

在很長一段時間裏,廣工就只有咱們4個在繼續走ACM的路(並且4個還都是同一屆,這種狗屎情況今年地區賽還兩個隊伍奪金,玄妙無比),忘記是誰給咱們起了個綽號,曰,四大護法。因而DieIng老是最不幸的,由於一個隊是3我的,而他總被排在第4,搞得他的隊友要麼就是老東西,要麼就是小朋友。而我以爲,是DieIng沒有衝破本身的那一關,只要他敢站出來朝領隊說一句,我不信我比他們3個弱!那麼數輪PK以後淘汰的也不必定是他。

去年我原本打算跟DieIng組隊,畢竟2+2比3+1顯得有點人性,但最終領隊爲了成績仍是選擇了3+1。還記得跟DieIng爲數很少的組隊練習中,只要是個題他都說是網絡流……沒想到後來DieIng領銜出征的哈爾濱地區賽還真的出現了網絡流,而且一出就是兩道,毫無懸念地,立馬就被咱們Dieling童鞋秒殺,順利奪金。這事太難以想象,但不管如何,在本身專一的事情之中取得好成績是可喜可賀的事情,表示熱烈祝賀DieIng。

招新

去年咱們ACM隊招新,挺滑稽,主力都是大二,招的都是大一。更滑稽的是,我大一時候從垃圾桶裏掏出來的招新傳單被委任由我來從新設計。當時設計得很精緻,還有淡雅背景(打印出來就不見了……),弄了一個賽馬的面試題來吸引新生(僞裝考智力,實際上是刷掉那些從網上抄答案的傢伙)。

因爲宣傳到位,面試的時候來了兩百多人,但領隊採起了一種愚蠢的模式——分紅5條隊,分別打分。我心想,咱們這兒入門的人都不夠5個。以後果真就出現了更愚蠢的事情。當時要求是給每一個人打幾個分,各項滿分是10分,而除了我和DieIng這條隊以外,每條隊打的分全是7分/7.5分/8分,我當時差點就對其餘4個隊的人爆粗,這究竟是搞永不落空的抽獎仍是什麼,做爲一個篩選環節,優秀的人就應該給9分10分,不行的人就應該大膽往低分打,0分都沒有任何問題。最終就是大多數人都沒法區分,採起隨機晉級。

招進來的這幫人現在已是大二了,我沒見到有太大成績。我曾經屢次跟他們強調,要把咱們的BBS利用起來,你們一塊兒進步才能進步,至今仍是淒冷一片。至今這一批人也沒有跟我探討過任何算法問題,僅僅是偶爾找我幫他們的代碼查錯,找我要標程。

罷。

日後

之後ACM的事情跟我沒太大關係。
編程

相關文章
相關標籤/搜索