每個(gè)隊(duì)伍將分到一臺(tái)電腦,比賽時(shí)間為上午十點(diǎn)到下午三點(diǎn),總計(jì)五個(gè)小時(shí),需要在這段時(shí)間內(nèi)完成十道題。
這十題將全部采用英文進(jìn)行描述,如果沒有點(diǎn)單詞儲(chǔ)備,連題目都讀不懂。
顏安拿到題目后便攬過了第一件活,“我來讀題吧。”
如果是常規(guī)開局,在拿到題目后最好是三人分開讀題,這樣可以在最大程度上節(jié)省時(shí)間。
但對顏安不同,在他眼里這些單詞、語法簡單地過分,林琛、劉希讀一題的功夫他都能全部搞定了,且不會(huì)出現(xiàn)翻譯錯(cuò)誤。
林琛一邊記錄題目內(nèi)容,一邊整理思路為每道題找到一個(gè)可能的解題方向。
劉希也沒閑著,調(diào)整IDE,打開PC^2,寫好頭文件及常用模板。順便還要打開BOARD,隨時(shí)準(zhǔn)備跟風(fēng)。
三人一刻不停,等顏安讀題完成,其他小隊(duì)還才到第六第七題,劉希時(shí)刻關(guān)注著坐在對面的那批人,發(fā)現(xiàn)他們在讀題后只交流過兩次,大概率只進(jìn)行到一半。
雖然只是微弱優(yōu)勢,但就是這樣的差距讓劉希對接下來的比賽充滿信心。
“我先寫吧,這道題我已經(jīng)有思路了?!?p> 顏安接過電腦的控制權(quán),在三個(gè)人共用一臺(tái)電腦的情況下,應(yīng)當(dāng)優(yōu)先把穩(wěn)過的水題給過掉。
這些題目的難度頗高,每道題大概都有那天考試時(shí)倒數(shù)第五題的難度,不過對現(xiàn)在的顏安和林琛來講都不在話下。
林琛則扯出幾張草稿紙和劉希分了一下,“我記得這道題你比較擅長,可以先在紙上解題?!?p> 作為技術(shù)能力和擅長方向都被兩人涵蓋在內(nèi)的劉希,在隊(duì)內(nèi)的定位其實(shí)非常尷尬,要不是章老師堅(jiān)持讓她留下來,現(xiàn)在坐在這里的可能就是另一位學(xué)長了。
讓三個(gè)各方面都拔尖的學(xué)生來參賽,從做題的角度來講無疑是最好的選擇。但競賽并不只有做題,劉希在隊(duì)伍里需要擔(dān)當(dāng)?shù)氖禽o助手。
在比賽持續(xù)的五個(gè)小時(shí)內(nèi),大多數(shù)隊(duì)伍都會(huì)放棄用餐時(shí)間,從十二點(diǎn)開始強(qiáng)隊(duì)會(huì)逐漸開始爆發(fā),與他們拉開差距。
劉希的任務(wù)是保證顏安和林琛在比賽前期能夠盡量的節(jié)省體力,以在中后程持續(xù)的發(fā)力。
當(dāng)然,如果她能解出題目來時(shí),也能為顏安、林琛節(jié)省寶貴的時(shí)間。
顏安正在寫的題目不是很難。
一個(gè)巨大的數(shù)n可表示為由0、1組成的字符串s,尋找可能的數(shù)對(i,j),其中滿足條件有零小于等于i小于等于j小于等于n,i&n=i,i&j=0。求每個(gè)n最多有多少數(shù)對(i,j)。
在讀題時(shí)他便已經(jīng)想到了兩種解題方法,其一是數(shù)位DP,其二是找規(guī)律加二項(xiàng)式定理加快速冪預(yù)存。
比幾天前基礎(chǔ)功更扎實(shí)的他已經(jīng)不需要用“取巧”的方式來寫這種題目了,嫻熟的敲擊鍵盤代碼一行接一行的冒出來。
他那清脆的鍵盤敲擊聲在安靜的考場中顯得格外刺耳,還在讀題的其他人驚訝的抬頭循著聲音張望,又很快低頭加快了讀題速度。
隨著思路的逐漸明確,顏安順利的完成了代碼,將其提交給評測機(jī)后不久,他們得到了全場第一個(gè)黃色的“FIRST PROBLEM SOLVED”氣球。
每一道題都有其相對應(yīng)的一種顏色,解題完成后通過評委的判定為正確,就可以得到相應(yīng)顏色的氣球。
而如果氣球上有“FIRST PROBLEM SOLVED”的字樣,則表示這道題他們隊(duì)伍是全場第一個(gè)完成的。
夏雨目瞪口呆的看著顏安,他以為的醬油選手轉(zhuǎn)頭就拿下了一血,而他還在想解題思路,隊(duì)友占著電腦寫的磕磕絆絆,看樣子一時(shí)半會(huì)完不成。
他這么厲害嗎?他看過所有題,就沒有那種一眼就會(huì)的題目,甚至題目中還有那么兩句翻譯不出來。
強(qiáng)烈的危機(jī)感涌上心頭,長得帥技術(shù)好,又是老同學(xué)。
夏雨意識(shí)到如果任由顏安發(fā)動(dòng)攻勢的話,他兩個(gè)月來的辛苦付出將會(huì)眨眼間付之一炬。
換他是陳淑敏,都很難不心動(dòng)。
心已經(jīng)開始痛了。
強(qiáng)迫自己將注意力轉(zhuǎn)到面前的稿紙上來,但幾分鐘過去,夏雨發(fā)現(xiàn)自己怎么也進(jìn)不了狀態(tài)。
同樣著急的不只是他,坐在顏安對面來自春申五角場的馮偉。
被他口中的鄉(xiāng)下人領(lǐng)先,讓他恨不得多長一雙手,光速敲完代碼把落后的給追回來。
更令他氣的是在與劉希的眼神交鋒中,對方眼里的得意。
鄉(xiāng)巴佬先讓你們又如何。
在心中狠狠咒罵,渾然沒有注意自己敲鍵盤的速度已經(jīng)慢了下來,同時(shí)出現(xiàn)了幾處連他都沒察覺的錯(cuò)誤。
這些錯(cuò)誤在他提交評測機(jī)后被退了回來,判定結(jié)果為Compile Error,也就是編譯錯(cuò)誤,連跑都跑不起來。
與他焦頭爛額的檢查錯(cuò)誤修改代碼相比,顏安就悠閑許多。
他正在與學(xué)姐一起解題,順著學(xué)姐的思路很快便將第三題的詳細(xì)步驟確定下來,就連細(xì)節(jié)都全部搞定。
剩下的工作非常簡單,只要照著稿紙把代碼抄上去就完事了。
至于第二題,則由林琛接手,相較于顏安他敲代碼的速度就要慢一些了,當(dāng)他敲到一半時(shí),已經(jīng)有隊(duì)伍得到了這道題對應(yīng)的紅色氣球。
畢竟大家都在挑這種簡單的題目寫,幾乎每道題都有數(shù)十支隊(duì)伍在同時(shí)發(fā)起沖鋒,誰能更快一步,就看手速有多快。
他們不可能樣樣都趕在別人之前,能拿下一血已經(jīng)相當(dāng)不錯(cuò)了。
三道最簡單的題目搞定,從第四道題開始就有了一定的難度,賽場隨處可見紅黃藍(lán)三色氣球,但第四種顏色遲遲未出,可見題目難度不在同一等級。
顏安初讀題時(shí)也被卡住了。
給出n和m,節(jié)點(diǎn)編號1到n,問有多少個(gè)n個(gè)點(diǎn)m條邊的簡單無向圖,滿足加一些邊后,能變成一個(gè)n個(gè)點(diǎn)n條邊的簡單環(huán)。
n的取值范圍是三到十萬。
m的取值范圍是零到n(n-1)/2。
正向思考解題非常復(fù)雜,顏安卡了會(huì)才想到。
如果倒過來考慮,有一個(gè)n點(diǎn)n邊的簡單環(huán),拿掉n-m條邊后,這樣便只剩下m條邊了,變成了n-m個(gè)鏈的方案數(shù)。
令k=n-m,那么這道題就成了n個(gè)點(diǎn)的一個(gè)簡單環(huán),拿邊之后剩下k條鏈的方案數(shù)。
這么來寫的話,會(huì)要簡單很多。
在林琛寫完第二題后,顏安立即接手過去開始這道題的代碼實(shí)現(xiàn)。
![](https://ccstatic-1252317822.file.myqcloud.com/writer/p1/contentv2/photo_default.png)
seed合集
求求追讀