平臺(tái)簡介&計(jì)分方式
Codeforces是一家為計(jì)算機(jī)編程愛好者提供在線評測系統(tǒng)的俄羅斯網(wǎng)站。該網(wǎng)站來自薩拉托夫州立大學(xué)。由Mike Mirzayanov領(lǐng)導(dǎo)的一個(gè)團(tuán)隊(duì)創(chuàng)立和維護(hù),是舉辦比賽、做題和交流的平臺(tái)。
網(wǎng)站中 “交流” 指的是自帶blog功能, 可以求助/發(fā)布題解之類,能夠與各國賽手針對某一問題進(jìn)行研究。官方語言是俄語和英語,俄語可以使用Google Translate翻成英文,可讀性還是很不錯(cuò)的。
Codeforces 最大的特點(diǎn)是比賽,在Codeforces中所有的用戶根據(jù)在以往比賽中的成績與表現(xiàn)被賦予一個(gè)Rating(等級)并冠以不同的等級頭銜,名字也會(huì)以不同的顏色顯示。在沒有打任何Codeforces的比賽前,你是“unrated”(暫未評級),名字顏色是黑色。rating=1500(不顯示,只有打了比賽之后才會(huì)體現(xiàn)出來)。
打過比賽后,就會(huì)變成“rated”,且會(huì)有如下評級:
①灰名,Newbie(新手):rating<1200;
②綠名,Pupil(入門):1200≤rating<1400;
③青名,Specialist(專家) 1400≤rating<1600;
④藍(lán)名,Expert(行家):1600≤rating<1900;
大部分OIer都在綠,青,藍(lán)名之間
⑤紫名,Candidate master(能手):1900≤rating<2100;
⑥橙名,Master(主宰):2100≤rating<2300;
到了橙名就能算得上是OI界的高手了,差不多在世界前1000左右(不包括沒有用Codeforces的)
⑦橙名,International Master(國際主宰):
2300≤rating<2400;
⑧紅名,Grandmaster(特級大師):
2400≤rating<2600;
⑨紅名,International Grandmaster(國際特級大師):
2600≤rating<3000;
⑩黑紅名,legendary Grandmaster(傳奇特級大師):
3000≤rating;
選手們按Rating以1700為界劃分為Div.1和Div.2兩類,Codeforces上會(huì)注釋Div.1還是Div.2,或同時(shí)進(jìn)行Div.1的比賽較難;如果同時(shí)進(jìn)行,Div.1的ABC三題會(huì)和Div.2的CDE三題相同。
每次比賽結(jié)束后Rating會(huì)根據(jù)之前各個(gè)選手的Rating和公式重新計(jì)算。對于沒有參加過比賽的新用戶,Rating會(huì)被視為1500,作為初始分值。
在比賽中,選手需要在2小時(shí)內(nèi)解決5道題,而解決某題得到的分?jǐn)?shù)由該題當(dāng)前的分?jǐn)?shù)減去(不成功的提交次數(shù))*50這里某道題的分?jǐn)?shù)是由比賽開始時(shí)的分?jǐn)?shù)隨時(shí)間線性減少得到的。同時(shí), “解決某道題” 是指Pretest Passed 即:通過了一次僅含部分測試點(diǎn)的測評,而最終決定是否得到這道題的分?jǐn)?shù),要看比賽結(jié)束后的統(tǒng)一測評(System Test) 如果在這時(shí)沒有通過,就稱FST(Failed System Test) 在比賽中的提交可以看到在哪個(gè)測試點(diǎn)出了什么問題(例如,僅一行WA on pretest 3)
codeforces當(dāng)中的比賽一般有六道題,由于一般情況限時(shí)2小時(shí),很難把6道題都做完?;旧夏軌蛲瓿扇},rating就不會(huì)跌了。當(dāng)然rating的漲跌情況也和你現(xiàn)在的rating是有關(guān)系的,系統(tǒng)會(huì)根據(jù)現(xiàn)在的rating生成一個(gè)期望值,最終的rating就是實(shí)際表現(xiàn)和期望值的差值。例:菜鳥做兩題可能就可以漲分,但如果目前的rating已經(jīng)很高的話,也完成兩題,分?jǐn)?shù)肯定是跌的。
與其他比賽不同的是:Codeforces設(shè)置了Hack環(huán)節(jié)。同一個(gè)Div的選手將被劃分到多個(gè)Room里,當(dāng)某一題目Pretest Passed之后,可以選擇鎖定(Lock)該題代碼。之后就可以查看同一個(gè)Room內(nèi)其他選手該題的代碼 (已經(jīng)通過pretest的) ,并試圖找到其代碼中的漏洞,模擬出一個(gè)數(shù)據(jù) (可以手打,也可以提交數(shù)據(jù)生成器) 使代碼不能通過,這就是Hack。 一次成功的Hack可以得到100分,而如果沒有成功,將會(huì)被扣50分。因而需要賽手們謹(jǐn)慎使用Hack權(quán)限。能否Hack成功,分別被稱為(un)successful hacking attempt
如果在【 留學(xué)背景提升 / 國際學(xué)術(shù)活動(dòng)(報(bào)名&備考)】方面
需要支持和幫助的話,歡迎掃碼聯(lián)系我們
還能免費(fèi)獲得一對一學(xué)術(shù)活動(dòng)規(guī)劃!

注冊&使用Codeforces
1.首先,輸入codeforces點(diǎn)擊進(jìn)入
2. 進(jìn)入之后,你將會(huì)看到這樣的一個(gè)頁面,先點(diǎn)擊左上角,Register(注冊)
3. 按照提示輸入信息,完成之后,Register一下
4.如圖
5.單擊任一比賽Enter進(jìn)入,可以查看題目與要求
6.選擇題目單擊,進(jìn)入問題
7.完成題目后,會(huì)出現(xiàn)以下界面
8.若未AC,點(diǎn)擊題號查看錯(cuò)誤原因
Codeforces科學(xué)刷題
據(jù)說大神們的刷題量都是上萬的,所以正式比賽里可以看到諸多大神不到一分鐘就秒了一道題,手速太快。對Competitive Programming而言,把題目做對是基本要求(題目太難則另當(dāng)別論),用更快的速度求解才是頂尖高手之間的核心區(qū)別。如果說真的有天賦存在的話,那我們也無能為力;但希望能像賣油翁一樣說出【無他,但手熟爾】。下面需要了解一些關(guān)于Codeforces比賽中一些常規(guī)的問題以及難度分布。
下圖反映比賽中問題分布頻率,展示不同算法(第一列)在不同問題難度(第一行)上的分布頻率情況(這里沒有展示Div1和Div2之間的差別,僅僅是按照題號A、B、C……來推斷難度)。
基于該圖,大概可以知道在什么樣的水平下應(yīng)該掌握什么樣的算法。
可以看到對簡單的A題而言,大部分都是考察基本的編程功底,諸如implementation(大概就是題目說什么,你做什么就是了),math(四則運(yùn)算、取模取整等等)以及brute force(暴力枚舉)。而隨著難度的增加,比如說E題,主要就在于考察對dp(動(dòng)態(tài)規(guī)劃),data structures(數(shù)據(jù)結(jié)構(gòu))。當(dāng)然了,從圖中也可以看出,高難度題目主要在math,geometry(計(jì)算幾何),shortest path(圖論)以及games(博弈)上。
Codeforces_Algorithms_Tag_Frequency.jpg
下圖反映了不同算法在不同問題難度上被解決次數(shù)的頻率分布。

以下是搬運(yùn)了知乎上一位賽手的刷題經(jīng)驗(yàn):
只做構(gòu)造題(難度隨自己 rating 變動(dòng)),并且只要連續(xù)思考 10 分鐘沒有任何進(jìn)展時(shí),就直接去看題解(如果有進(jìn)展就將計(jì)時(shí)器歸零)。事實(shí)證明這個(gè)方法對我非常有效,畢竟這些題目所需要的常用技巧(tricks)是有限的。
不要覺得看題解是一件很喪氣的事情,有時(shí)候沒想出來只是因?yàn)槟悴涣私膺@道題需要的 trick。
我最大的收獲就是熟練掌握了「從特殊到一般」的技巧。大多數(shù)題目是不能一眼看出規(guī)律的,這就需要從小數(shù)據(jù)或特殊數(shù)據(jù)出發(fā)(比如元素值只有 0 和 1),去研究并發(fā)現(xiàn)性質(zhì)和規(guī)律。在做構(gòu)造題時(shí),應(yīng)當(dāng)重點(diǎn)摸索和體會(huì)這一技巧。
作者:靈茶山艾府
鏈接:
https://www.zhihu.com/question/353734418/answer/2353160035
來源:知乎
最后:
附 "ALL" CodeForces Rounds Tutorial By iman_MC
codeforces.com/blog/entry/1492
有些Codeforces上有人發(fā)過的題解并沒有被鏈接到對應(yīng)的題目上(即存在題解,但是題目頁面右下方并沒有Tutorial鏈接),有可能可以在這里找到。
以上就是關(guān)于【算法競賽平臺(tái)CodeForces注冊使用方法詳解】的解答,如需了解學(xué)校/賽事/課程動(dòng)態(tài),可至翰林教育官網(wǎng)獲取更多信息。
往期文章閱讀推薦:
??2027年QS最佳留學(xué)城市排名發(fā)布!倫敦位列第三,北美竟無緣Top10 ?
王虹、鄧煜!兩位中國數(shù)學(xué)家同獲菲爾茲獎(jiǎng)!中國數(shù)學(xué)史新紀(jì)元!

? 2026. All Rights Reserved. 滬ICP備2023009024號-1