我和藍(lán)橋杯的那兩年
前言
有很多事情在最初的時(shí)候是令人最難忘的,無(wú)論是學(xué)習(xí)還是生活的點(diǎn)點(diǎn)滴滴,追憶起那些最初的場(chǎng)景,既美好又有點(diǎn)失落,美好是因?yàn)槟欠N懵懂而摸索的進(jìn)步和得知確實(shí)很難得,而些許失落是因?yàn)橐换味歼^(guò)去那么久啦,那時(shí)候的地點(diǎn)、人和事都已很難重溫。
前幾天翻空間說(shuō)說(shuō)發(fā)現(xiàn)母校的師弟師妹們都在報(bào)名第十二屆藍(lán)橋杯大賽,走在寒風(fēng)颼颼的路上,勾起本科生涯那段寒天與藍(lán)橋杯的故事。記得剛上大一時(shí)候不久,老師問(wèn)班上同學(xué)們有什么目標(biāo),有幾個(gè)同學(xué)回答了我記得很清楚,一個(gè)說(shuō)想考研,還有說(shuō)想進(jìn)BAT,還有一個(gè)同學(xué)說(shuō)想?yún)⒓痈?jìng)賽拿獎(jiǎng)。那是我第一次知道算法競(jìng)賽的存在。而我自己本科開(kāi)始學(xué)算法時(shí)候不是為了進(jìn)大廠、為了考研,那時(shí)候啥也不懂就是因?yàn)橐獏⒓铀{(lán)橋杯比賽。
我們學(xué)校是雙非,大部分人要么考研要么搞開(kāi)發(fā),專(zhuān)注算法的不是很多,更多的還是帶著學(xué)。我本科學(xué)校對(duì)藍(lán)橋杯還是挺看重的,并不是個(gè)人直接報(bào)名,而是參加校賽之后得獎(jiǎng)后然后學(xué)校統(tǒng)一安排報(bào)名,所以第一道坎就是過(guò)校賽。
第一次止步校賽
第一次準(zhǔn)備比賽的時(shí)候,那時(shí)候剛上大二,因?yàn)樵诖笠换径际峭孢^(guò)來(lái)的,到了大二距離校賽前一段時(shí)間。我的舍友W找我問(wèn)我是要參加藍(lán)橋杯的校賽嘛,我跟他說(shuō)是的然后他說(shuō)可以一起準(zhǔn)備。因?yàn)樵蹆蓻](méi)有參加協(xié)會(huì)、也不認(rèn)識(shí)啥這方面有啥天賦的人,所以只能黑燈瞎摸索。開(kāi)始了第一次藍(lán)橋杯的探尋之旅。
然后那個(gè)時(shí)候完全是小白從0開(kāi)始,我們倆從協(xié)會(huì)群里找到幾年歷年試題以及一些資料,然后開(kāi)始研究。我記得很清楚的那時(shí)候練習(xí)一些啥求素?cái)?shù)、進(jìn)制轉(zhuǎn)換?等等之類(lèi)的題。那個(gè)時(shí)候這種題對(duì)我們X小白來(lái)說(shuō)已經(jīng)很有挑戰(zhàn)啦。然后后面的編程題更是讀不懂不知道怎么做啊,也沒(méi)測(cè)試樣例只有題目的一兩個(gè)樣例。但是哪個(gè)時(shí)候,學(xué)會(huì)了一個(gè)新的東西:回溯算法??;厮菀卜Q為暴力,我和w花了好幾天研究回溯算法,剛開(kāi)始也搞不懂遞歸,更何況帶著邏輯的回溯算法,把回溯算法硬啃之后我兩發(fā)現(xiàn):咦,這題好像可以暴力破解哎!當(dāng)然,雖然用暴力能夠求解出一部分問(wèn)題,但是實(shí)質(zhì)上暴力只能過(guò)一部分樣例。
當(dāng)然感覺(jué)良好,到參加校賽那天和想象的不太一樣,第一次和那么多人一起參加這樣比賽,大部分是cpp我用的是Java學(xué)校的機(jī)器非常老舊,跑個(gè)Java程序就會(huì)非??ǎ龅侥切╊}突然就慌了,記得很清楚的一道需要用long類(lèi)型表示的數(shù)字我硬是在那邊糾結(jié)為啥用int表示不出來(lái),那時(shí)候編程素養(yǎng)其實(shí)還真的很欠火候,天氣涼涼,結(jié)果校賽也是很遺憾的涼了。當(dāng)然W舍友也涼了,我們決定寒假和來(lái)年要好好準(zhǔn)備。

第二次終去北京
在第一次落敗第二年的春天,我和W舍友就在杭電上刷題準(zhǔn)備下一次的藍(lán)橋杯,從基礎(chǔ)到字符串,再到貪心、bfs、dfs以及其他??斓绞罴俚臅r(shí)候Y同學(xué)加入到我們,那時(shí)候我們?nèi)罴倬蜁?huì)一起刷題討論題,共同進(jìn)步。入秋之后我們專(zhuān)業(yè)幾個(gè)報(bào)名的還開(kāi)了一個(gè)藍(lán)橋杯校選拔賽互助小隊(duì)一起準(zhǔn)備,那時(shí)候快校賽時(shí)候發(fā)現(xiàn)《將夜Ⅰ》超級(jí)好看哈哈在暖暖被窩里熬夜追了一晚,第二天上午還不是很清醒的就去參加比賽了。經(jīng)過(guò)不少時(shí)間的準(zhǔn)備當(dāng)然也是容易通過(guò)校賽(畢竟我們雙非強(qiáng)者有限)。而我們專(zhuān)業(yè)也有好多人通過(guò)校賽,可以一起省賽一日游,終于能滿一個(gè)小心愿了,不管怎么樣也去體驗(yàn)一波。
在寒假期間我們也做了一些準(zhǔn)備,搜集了一些算法資料和視頻以及藍(lán)橋杯試題,有個(gè)小伙伴還買(mǎi)了歷年試題講解(有需要可以加我或者評(píng)論哈),假期有時(shí)我正在被窩里打王者Y同學(xué)就偶爾給我來(lái)一題強(qiáng)行拖我一下,想想那段無(wú)憂無(wú)慮的日子還是很美好的。在三月份很幸運(yùn)的我們專(zhuān)業(yè)又是很多人晉級(jí)國(guó)賽,我們幾個(gè)晉級(jí)的就很期待去北京。

在五月份天氣變暖起來(lái),我們一行在J老師的帶領(lǐng)下出行去北京,這是我第一次坐高鐵去那么遠(yuǎn)的地方,也是第一次去北京。途徑南京、徐州、濟(jì)南、天津這些大站都拿起手機(jī)拍一拍。到了北京在J老師的帶領(lǐng)下我們就在北方工業(yè)大學(xué)考點(diǎn)附近一個(gè)酒店。老師允許我們小范圍活動(dòng)我們專(zhuān)業(yè)幾個(gè)人便在附近商場(chǎng)一起吃了頓自助餐,可能是咱們鄉(xiāng)下人居多很多人(我)沒(méi)來(lái)過(guò)北京走兩步拍兩下、發(fā)個(gè)朋友圈,跟家里說(shuō)我來(lái)北京啦!
而第二天比賽時(shí)候,也算是被國(guó)賽血虐了一把。我參與的那場(chǎng)國(guó)賽的難度和競(jìng)爭(zhēng)力比省賽高了一大截。如果能拿個(gè)國(guó)一,我覺(jué)得還是很厲害的。當(dāng)初還打算北京轉(zhuǎn)轉(zhuǎn)但由于時(shí)間緊,服從安排就老實(shí)呆著,不過(guò)踏過(guò)北京的土地也很滿足了又多去過(guò)一個(gè)大城市!

談?wù)勊{(lán)橋杯
有些人可能很少參加比賽,所以對(duì)藍(lán)橋杯不太了解。
我打藍(lán)橋杯的時(shí)候,還有一些打ACM的同學(xué)沒(méi)有參與藍(lán)橋杯,但現(xiàn)在就不同了。這些年隨著藍(lán)橋杯大賽的水準(zhǔn)和規(guī)模慢慢提高,有很多雙一流學(xué)校的學(xué)生參加,也吸引了很多ACMer參與,看到前面拿獎(jiǎng)的基本都是好學(xué)校,專(zhuān)業(yè)頂尖選手越來(lái)越多。大賽選手與ACM參賽選手重疊度逐年增加,多屆藍(lán)橋杯國(guó)賽一等獎(jiǎng)、二等獎(jiǎng)選手同時(shí)是ACM的金牌獲得者,可以說(shuō)藍(lán)橋杯大賽儼然是一塊大佬試金石。
講了這么多,我應(yīng)該幫你捋一捋介紹一下,搞清自身定位,當(dāng)然可能有些偏頗僅供參考哈!
藍(lán)橋杯 VS ACM:
| 屬性 | 藍(lán)橋杯 | ACM |
|---|---|---|
| 隊(duì)伍形式 | 個(gè)人賽 | 三人團(tuán)體 |
| 賽制 | OI | ACM |
| 分組 | 研究生組、A組、B組、C組 | 各學(xué)校統(tǒng)一競(jìng)爭(zhēng) |
| 時(shí)長(zhǎng) | 4小時(shí) | 5小時(shí) |
| 題目類(lèi)型 | 填空+編程題 | 編程題 |
| 官網(wǎng) | dasai.lanqiao.cn | 無(wú) |
藍(lán)橋杯:
藍(lán)橋杯全國(guó)軟件和信息技術(shù)專(zhuān)業(yè)人才大賽是由工業(yè)和信息化部人才交流中心舉辦的全國(guó)性IT學(xué)科賽事。全國(guó)1200余所高校參賽,累計(jì)參賽人數(shù)超過(guò)40萬(wàn)人。2020年,藍(lán)橋杯大賽被列入中國(guó)高等教育學(xué)會(huì)發(fā)布的“全國(guó)普通高校學(xué)科競(jìng)賽排行榜”,是高校教育教學(xué)改革和創(chuàng)新人才培養(yǎng)的重要競(jìng)賽項(xiàng)目。
大賽共包括三個(gè)競(jìng)賽組別,個(gè)人賽-軟件類(lèi),個(gè)人賽-電子類(lèi),以及視覺(jué)藝術(shù)大賽。其中個(gè)人賽-軟件類(lèi)的比賽科目包括C/C++程序設(shè)計(jì)、Java軟件開(kāi)發(fā)、Python程序設(shè)計(jì)。今年第十二屆藍(lán)橋杯報(bào)名時(shí)間是2020年12月-2021年3月,4月省賽,5月國(guó)賽。
ACM:
國(guó)際大學(xué)生程序設(shè)計(jì)競(jìng)賽(英文全稱:International Collegiate Programming Contest(簡(jiǎn)稱ICPC))是由國(guó)際計(jì)算機(jī)協(xié)會(huì)(ACM)主辦的,一項(xiàng)旨在展示大學(xué)生創(chuàng)新能力、團(tuán)隊(duì)精神和在壓力下編寫(xiě)程序、分析和解決問(wèn)題能力的年度競(jìng)賽。經(jīng)過(guò)近40年的發(fā)展,ACM國(guó)際大學(xué)生程序設(shè)計(jì)競(jìng)賽已經(jīng)發(fā)展成為全球最具影響力的大學(xué)生程序設(shè)計(jì)競(jìng)賽。賽事目前由方正集團(tuán)贊助。ACM一般區(qū)域賽在秋季,各個(gè)區(qū)域賽時(shí)間不同,每個(gè)隊(duì)只能參加同一年兩場(chǎng)區(qū)域賽。
藍(lán)橋杯是個(gè)人賽,個(gè)人賽軟件類(lèi)分為:C/C++大學(xué)研究生組,C/C++大學(xué)A組,C/C++大學(xué)B組,C/C++大學(xué)C組,Java大學(xué)研究生組,Java大學(xué)A組,Java大學(xué)B組,Java大學(xué)C組,Python大學(xué)組共9個(gè)組別。研究生只能報(bào)研究生組。一本院校(985、211)本科生只能報(bào)大學(xué)A組以上組別。其它本科院校本科生可報(bào)大學(xué)B組及以上組別。其它高職、高專(zhuān)院??勺孕羞x擇報(bào)任意組別。每位選手只能申請(qǐng)參加其中一個(gè)組別的競(jìng)賽。各個(gè)組別單獨(dú)評(píng)獎(jiǎng)。藍(lán)橋杯的分組競(jìng)賽方式,讓平時(shí)被“學(xué)霸”打壓的普通學(xué)生,也能有獲得感,有進(jìn)步感,給更多學(xué)生指引了努力的方向。
在比賽的時(shí)候藍(lán)橋杯是OI賽制,也就是提交答案之后賽后評(píng)判,根據(jù)通過(guò)的樣例數(shù)量給分。這樣的賽制,放寬了對(duì)于編程速度的要求,對(duì)于大部分選手來(lái)說(shuō)更友好一點(diǎn),可以更從容地解決問(wèn)題,但也可能有些錯(cuò)誤被疏忽不知道已經(jīng)錯(cuò)了。
而ACM是團(tuán)體賽,需要三個(gè)人協(xié)力解答問(wèn)題,想要拿到好的成績(jī)隊(duì)友當(dāng)然也相當(dāng)關(guān)鍵,各個(gè)學(xué)校強(qiáng)弱校都統(tǒng)一競(jìng)爭(zhēng),頭部榜基本被名校和ACM強(qiáng)校霸榜。競(jìng)賽是ACM制,也就是當(dāng)場(chǎng)評(píng)測(cè),只能知道通過(guò)(通過(guò)會(huì)升起一個(gè)氣球看周?chē)鷼馇驍?shù)就知道其他隊(duì)A了多少題),或者錯(cuò)誤(WA、RE、TLE等),出錯(cuò)需要及時(shí)修改答案。只有完全通過(guò)才會(huì)給分,對(duì)算法要求是比較高的。
藍(lán)橋杯適合各個(gè)層次的人,特別是給了很多普通本科和高職高專(zhuān)選手接觸更多算法編程的機(jī)會(huì),有一定的普及性,為廣大雙非和專(zhuān)科院校的學(xué)生提供了更廣闊的舞臺(tái)。現(xiàn)在很多程序比賽,都屬于拔高性質(zhì)。很多初級(jí)階段的計(jì)算機(jī)相關(guān)專(zhuān)業(yè)的學(xué)生,無(wú)法參加這類(lèi)拔高性質(zhì)的比賽,但是從數(shù)量上看,他們才是未來(lái)程序界的主力軍,他們應(yīng)該接觸更多的算法知識(shí),提升自身水平。藍(lán)橋杯的試題以算法和數(shù)據(jù)結(jié)構(gòu)為主,和各種國(guó)際國(guó)內(nèi)知名的程序設(shè)計(jì)比賽相比,其專(zhuān)業(yè)水平絕對(duì)不輸。
ACM(ICPC)個(gè)人覺(jué)得是更適合一些算法高端玩家,老玩家(高中就打OI)、傳統(tǒng)ACM強(qiáng)校(有氛圍、能湊齊隊(duì)友)、高付出的一個(gè)比賽,當(dāng)然也適合對(duì)它熱愛(ài)的同學(xué),當(dāng)然,這種比賽偏一小部分人,是算法精英級(jí)別的一個(gè)比賽。當(dāng)然也有很多努力幾年最后也打了個(gè)鐵(甚至爆零)也沒(méi)辦法,ACM就是個(gè)無(wú)底洞,它的樂(lè)趣在于不停的探索和AC。
當(dāng)然,我的建議就是有能力、有準(zhǔn)備、有氛圍、有熱愛(ài)去沖ACM的,趁著年輕當(dāng)然沖一沖,拿個(gè)牌牌很好(和參加藍(lán)橋杯剛好也不沖突),當(dāng)然這個(gè)期間也要付出非常多的努力。如果準(zhǔn)備的比較晚了(大二無(wú)算法基礎(chǔ)就很難了),就不一定非要去沖ACM,因?yàn)樵谶@個(gè)高手集群和后浪層出的時(shí)代你真的有可能會(huì)打個(gè)鐵,所以要慎重選擇。而藍(lán)橋杯感覺(jué)是全民皆宜的一個(gè)比賽,認(rèn)可度在算法競(jìng)賽類(lèi)也很高,通過(guò)比賽大部分人也能夠進(jìn)步、去證明自己??偟膩?lái)說(shuō)ACM是圈內(nèi)難度較大,普及分布在強(qiáng)校,認(rèn)可度最高的一個(gè)比賽,題型上來(lái)看范圍也更廣、更深。而藍(lán)橋杯則是一個(gè)算法普及度很高的比賽,題型上更側(cè)重于經(jīng)典算法和常用算法(例如貪心、bfs、dfs、dp等,而數(shù)論、計(jì)算幾何等知識(shí)考查相比ACM少很多)。藍(lán)橋杯將算法普及和推廣、讓更多人參與進(jìn)來(lái),這點(diǎn)目前在國(guó)內(nèi)做的是最好的。
藍(lán)橋杯對(duì)我(你)的意義
其實(shí)生活和學(xué)習(xí)需要一定的競(jìng)爭(zhēng)和認(rèn)可,通過(guò)這樣的競(jìng)爭(zhēng)促進(jìn)自己的進(jìn)步,通過(guò)得獎(jiǎng)或者其他成就增強(qiáng)自己的信心,為下一輪的學(xué)習(xí)循環(huán)做準(zhǔn)備。當(dāng)然這個(gè)過(guò)程可能并不一定一帆風(fēng)順,很可能你會(huì)遇到一些挫敗和灰心,而藍(lán)橋杯相比ACM就是給了更多人這樣的機(jī)會(huì)(至少我和我身邊同學(xué)這樣)。在同一個(gè)舞臺(tái),不同人追向不同的目標(biāo),根據(jù)自己條件和身邊氛圍去向前邁進(jìn)。至少我覺(jué)得在這方面藍(lán)橋杯是其他賽事無(wú)法比擬的。
如果你有ACM的機(jī)會(huì),那么和隊(duì)友刷題的經(jīng)歷一定很難忘,如果沒(méi)有ACM機(jī)會(huì)也沒(méi)關(guān)系,可以一起備戰(zhàn)藍(lán)橋杯等算法比賽,找?guī)讉€(gè)隊(duì)友一起準(zhǔn)備,討論互助,讓枯燥的東西因?yàn)楦?jìng)爭(zhēng)和幫助而變得更加有趣,也希望看到此篇的大佬都能有成,進(jìn)步的路上一帆風(fēng)順!也愿看到此篇的后來(lái)人能有所收獲。希望你們都能去北京,也希望你們都能拿證書(shū)!
最后,附上和本校小學(xué)弟部分聊天圖,因?yàn)閺奈覀冞@屆過(guò)后本科學(xué)校搬到又大又豪華的新校區(qū),每次遇到母校小學(xué)弟都會(huì)很溫馨的給老學(xué)長(zhǎng)拍幾張新校區(qū)圖片,實(shí)名羨慕啊!

看到這張圖,突然就是想起自己那個(gè)時(shí)候,我曾向一個(gè)學(xué)長(zhǎng)問(wèn)的問(wèn)題我跟他說(shuō)我好好沖藍(lán)橋杯,但事后我涼了就沒(méi)消息了,第二年才過(guò)了校賽和那個(gè)學(xué)長(zhǎng)一起參賽。雖然我不能和小學(xué)弟一起參賽了,在這里也希望他以及看到這篇的你們都能有個(gè)好的結(jié)果!
從室友到隊(duì)友到專(zhuān)業(yè)伙伴,圈子越來(lái)越大,從校選拔賽到省賽到國(guó)賽,走的越來(lái)越遠(yuǎn),雖然我花了很久才體驗(yàn)到這段旅程,但依然很滿足那段天真的歲月。第十二屆藍(lán)橋杯大賽正在報(bào)名(報(bào)名官網(wǎng):https://dasai.lanqiao.cn/ ),也希望你們都能有屬于自己的這段歲月。
