Topcoder是一個(gè)知名的在線編程大賽平臺(tái),是在線算法比賽的始祖,引入了顏色,Challenge,Virtual Participation,Room等概念,由Jack Hughes在2001年4月創(chuàng)立,后被Appirio和Wipro相繼收購(gòu)。Topcoder起初為大學(xué)學(xué)生舉辦SRM(每場(chǎng)時(shí)長(zhǎng)1.5小時(shí)的算法學(xué)術(shù)活動(dòng)),后來(lái)在逐漸的發(fā)展下,平臺(tái)在Topcoder挑戰(zhàn)的基礎(chǔ)上開(kāi)始舉辦TCO(Topcoder公開(kāi)賽)。
Topcoder(https://www.topcoder.com/)是一個(gè)程序設(shè)計(jì)比賽的網(wǎng)站,題型和比賽形式跟ACM/ICPC極不相同,在每一次Topcoder挑戰(zhàn)結(jié)束之后,所有參賽者可以自由訪問(wèn)優(yōu)勝者的代碼并以此來(lái)進(jìn)行比對(duì),對(duì)自己的編程能力進(jìn)行提升。該網(wǎng)站把中國(guó)納入其賽區(qū),大家可以上去那里跟來(lái)自全世界的程序員(事實(shí)上大多數(shù)也是大學(xué)生)進(jìn)行更直接的交流,是ACM/ICPC練兵的陣地之一。該平臺(tái)也是全球最大的軟件研發(fā)眾包學(xué)術(shù)活動(dòng)類(lèi)平臺(tái)。平臺(tái)上,每個(gè)項(xiàng)目的周期平均在1到2周,所有人都可免費(fèi)注冊(cè)參加。參賽者在規(guī)定時(shí)間里提交解決方案,最終獲勝者會(huì)獲得發(fā)包方事先設(shè)定的獎(jiǎng)金。每位注冊(cè)者的個(gè)人信息是公開(kāi)的,在參賽前可以點(diǎn)擊該場(chǎng)學(xué)術(shù)活動(dòng),查閱已經(jīng)參加這次學(xué)術(shù)活動(dòng)的對(duì)手的個(gè)人信息(包括獲勝次數(shù)、技能等)。
一場(chǎng)TopCoder的比賽是75分鐘 Coding Phase 做題,5分鐘 Intermission 間歇,15分鐘Challenge,就和Codeforces的Hack差不多。75分鐘中共有三道題目,較為典型的分?jǐn)?shù)分布是250-500-1000,沒(méi)有部分分。隨著時(shí)間的流逝,分?jǐn)?shù)會(huì)逐漸縮水。需要特別注意的是,TopCoder的分?jǐn)?shù)并非是按照AC時(shí)間計(jì)算的,而是按照從你打開(kāi)題目到提交代碼的時(shí)間計(jì)算的。
1、登陸注冊(cè)
Topcoder的會(huì)員注冊(cè)沒(méi)有門(mén)檻,在填寫(xiě)相關(guān)個(gè)人信息之后即可成為會(huì)員。
2、開(kāi)始挑戰(zhàn)
The community——Compete——All challenges
該頁(yè)面上顯示的截止當(dāng)前的所有正在進(jìn)行中的學(xué)術(shù)活動(dòng),可以看到正在開(kāi)放的比賽有47場(chǎng)。
3、進(jìn)入比賽
選擇一個(gè)Contest,頁(yè)面上會(huì)有任務(wù)描述、獎(jiǎng)金金額、比賽截止時(shí)間、已經(jīng)參賽的人等信息。點(diǎn)擊“register”即可參賽。
首次參賽,則會(huì)出現(xiàn)以下頁(yè)面,點(diǎn)擊“I Agree”。已經(jīng)參加過(guò)該平臺(tái)的其他項(xiàng)目,則不會(huì)出現(xiàn)該頁(yè)面,需等待審核,“register”由灰色變成紅色的“Unregister”,即參賽成功。
4、提交代碼
點(diǎn)擊“Show Deadlines”,顯示該場(chǎng)學(xué)術(shù)活動(dòng)的時(shí)間節(jié)點(diǎn),包括注冊(cè)截止時(shí)間、提交截止時(shí)間、評(píng)審截止時(shí)間等。注意一定要在截止時(shí)間前提交。
點(diǎn)擊“Submit”進(jìn)入提交頁(yè)面,將比賽文件添加到紅色框內(nèi)即可。即可完成整個(gè)學(xué)術(shù)活動(dòng)。
在Challenge時(shí),你可以看到任何選手的任何代碼,包括自己沒(méi)能通過(guò)的題。提供一組數(shù)據(jù)使得該選手出錯(cuò),你就獲得了50分,否則失去25分。在15分鐘之后將會(huì)進(jìn)行System Test。按照經(jīng)驗(yàn)SystemTest可能在一兩分鐘之內(nèi)完成。如果你打開(kāi)榜的話,會(huì)看到不斷有人通過(guò)系統(tǒng)測(cè)試,分?jǐn)?shù)將會(huì)在一兩分鐘之內(nèi)更新,題解也馬上會(huì)發(fā)出。
5、客戶端
如果想要在TopCoder上做題訓(xùn)練,效率最高的辦法當(dāng)然是使用一個(gè)配置了插件的客戶端。需要注意訓(xùn)練房間和比賽的規(guī)則是一樣的,你提交之后什么也不會(huì)測(cè),需要在上面的控制欄里面選擇”Run System Test”才能夠測(cè)試所有測(cè)試點(diǎn)。
Topcoder的題目代碼大多不是很長(zhǎng),但是思維復(fù)雜度較高。而且似乎動(dòng)態(tài)規(guī)劃類(lèi)型的題目比較多。Topcoder的評(píng)測(cè)機(jī)很快,并且開(kāi)-O2優(yōu)化,時(shí)間限制默認(rèn)為2秒,內(nèi)存限制默認(rèn)為256MB,基本不用擔(dān)心被卡常數(shù)等問(wèn)題。
Topcoder的項(xiàng)目類(lèi)型涵蓋了諸多的編程知識(shí)點(diǎn),單說(shuō)dev就可以細(xì)分很多類(lèi)型分支。前端(Angular 、react、jQuery),后端(Nodejs,Java,Python,http://asp.net core),手機(jī)(IOS、Android,React Native,Ironic),底層(C++)等等。并且在Topcoder上獲得的成績(jī)只與個(gè)人能力有關(guān)。
Topcoder上的項(xiàng)目基本用github和gitlab做倉(cāng)庫(kù),且公司自己很多內(nèi)部的項(xiàng)目都放在github上面且開(kāi)源,直接就可以找到。
掃碼獲取備賽計(jì)劃,考前查缺補(bǔ)漏、重點(diǎn)沖刺
【免費(fèi)領(lǐng)取】相關(guān)真題及解析,還有一對(duì)一學(xué)術(shù)活動(dòng)規(guī)劃!

以上就是關(guān)于【Topcoder:在線算法比賽的始祖】的解答,如需了解學(xué)校/賽事/課程動(dòng)態(tài),可至翰林教育官網(wǎng)獲取更多信息。
往期文章閱讀推薦:
2026五大奧賽中國(guó)隊(duì)斬獲四個(gè)世界第一,全員金牌收官!
??2027年QS最佳留學(xué)城市排名發(fā)布!倫敦位列第三,北美竟無(wú)緣Top10 ?

? 2026. All Rights Reserved. 滬ICP備2023009024號(hào)-1