Codeforces面面观
noip吧
全部回复
仅看楼主
level 12
wyl8899 楼主
1L防抽
2012年12月26日 07点12分 1
level 12
wyl8899 楼主
Codeforces
简称
: cf(所以谈论
cf的时候经常被误会成
TX的那款游戏
).
网址
: 在后面加个
com就可以了
.
  这是一个俄国的算法竞赛网站
,由来自萨拉托夫州立大学、由
Mike Mirzayanov领导的一个团队创立和维护
,是一个举办比赛、做题和交流的平台
.举办比赛和做题就不说了
,“交流”指的是自带
blog功能
,可以求助
/发布题解之类
.官方语言是俄语和英语
,因此可能有些偏僻的题目的题解是用俄语写的
,别慌
,扔给
Google Translate翻成英文
,可读性还是很不错的
.至于英语
,cf上
Russian English确实有
,但并不严重
,题目里偶尔会出现很奇怪的表达方式或者不常用的词汇
,这时候就借助样例吧
,找个人问问也是可以的
.cf最大的特点是比赛
,所以接下来主要的篇幅用于介绍
cf传统比赛的规则
.
2012年12月26日 07点12分 2
是cf告诉了我机翻的强大
2012年12月26日 07点12分
level 12
wyl8899 楼主
  在
cf,所有的用户根据在以往比赛中的表现被赋予一个
Rating并冠以不同的头衔
,名字也会以不同的颜色显示
,比如
Expert是蓝色
,Master是黄色
,因此我们通常以颜色代指头衔
.选手们按
Rating以
1700为界划分为
Div.1和
Div.2两类
,相应地
,cf上的比赛也会指明是
Div.1还是
Div.2,抑或同时进行
.Div.1的比赛较难
;如果同时进行
,Div.1的
CDE三题会和
Div.2的
ABC三题相同
.每次比赛结束后
Rating都会有相应的变动
.对于没有参加过比赛的新用户
,在比赛后重新计算
Rating的时候
,他的
Rating会被视为
1500.
  在比赛中
,选手有
2个小时的时间去解决
5道题
,而解决某题得到的分数由该题当前的分数减去
(不成功的提交次数
)*50,这里
,某道题的分数是由比赛开始时的分数随时间线性减少得到的
.同时
,这里的“解决某道题”是指
Pretest
Passed,即
,通过了一次仅含部分测试点的测评
,而最终决定是否得到这道题的分数
,要看比赛结束后的统一测评
(System Test),如果在这时没有通过
,就称
FST(Failed System Test).在比赛中的提交可以看到在哪个测试点出了什么问题
(例如
,仅一行
WA on pretest 3).
  同一个
Div的选手将被划分到若干个
Room里
,每个
Room约
20位选手
;当某道题
Pretest Passed之后
,可以选择锁定
(Lock)该题代码
,之后就可以查看同一个
Room内其他选手该题的代码
(当然了
,这也是已经通过
pretest的
),并试图找出其中的漏洞
,自己出一个数据
(可以手打
,也可以提交数据生成器
)让这个代码不能通过
,这就是
Hack,有时也称
Challenge.一次成功的
Hack可以得到
100分
,而如果没有成功
,将会被扣
50分
,分别被称为
(un)successful hacking attempt.
  在比赛中
,选手可以看到实时的排名
(Standing),也可以选择只看加了好友的选手的排名
.此外
,还可以看到某题有多少人通过的信息
,这在某些情况下很有用
.
2012年12月26日 07点12分 3
每一个room不止20个吧。。。划分的好像将近40个?不过实际参加的少一点
2012年12月26日 08点12分
额。。。div1和div2打反了吧。。。
2012年12月27日 04点12分
额。。。是指这一句=>"Div.1的CDE三题会和Div.2的ABC三题相同"
2012年12月27日 04点12分
回复 死刘 :Orz好严重的手滑我当时怎么就没发现 不过帖子没法修改真是麻烦呢
2012年12月27日 05点12分
level 12
wyl8899 楼主
  主要的东西就介绍完了
.这里再补充一点一些零散的东西
.
  关于
Rating的计算
: 这是一种类似
Elo Rating的系统
,可以在
cf的
FAQ或
Wiki百科找到更详细的信息
.
  关于
Contribution : 在用户信息页面会见到这个东西
,它用来衡量一个用户对
cf的贡献程度
.这个数值取决于该用户所写的
blog和他对其他的
blog所作出的评论的“反响”
.每个
blog的下方和评论的旁边都会有一个往上和往下的箭头以及一个数字
,表示你可以对他进行好或者不好的评价
,而数字则显示当前已有的评价
,而这就是前面说到的“反响”
.点击了往下的箭头会让这个数值
-1,点击了往上的箭头则会
+1或
+2,这里
+2的条件是你本身的
contribution不低于
+25.如果你打算做评论
,请谨慎
,因为在贴吧里很正常的回复可能会被认为“没意义”或者别的原因而反响很差
(比如一句正常的
Congratulations!可以被
-12),随而
contribution也会很难看
.由于这样的原因
,你可以选择完全可以无视这个数值
.
  关于
GYM : 在
gym里举办的比赛基本上是
ACM/ICPC规则的
,可以单干
,也可以组队
(人数似乎没有限制
).gym的题目并不会在
Problemset里显示
,提交之后也不能看到数据
(和常规比赛时一样
,仅能看到一行
TLE on test 137之类
),不过据说在名字变红
[即
(International) Grandmaster]之后可以看到数据
.当然了
,gym的代码也是不公开的
.
  大约
...就是这么多
? 由于水平有限
,如果有错或者哪里需要补充请指出
.
2012年12月26日 07点12分 5
gym的代码是公开的...不过也得变红...
2012年12月26日 07点12分
红人能看到代码
2012年12月26日 07点12分
nimendouhuishuoenglish!!
2012年12月26日 07点12分
近距离ORZ三头神犇 三个大吧[我错了]
2012年12月26日 08点12分
level 12
wyl8899 楼主

两条补充:
  关于
Virtual Participant :
有时我们会在某条提交记录的
ID
右上方看到一个小小的
#
号或者显示一个时间
,
鼠标移上去会出现
Virtual
Participant的字样
.正如其字面意思
,这意味着这个用户正在“虚拟”参加一场比赛
.如果你虚拟地参加一场比赛
,系统会在接下来的
2小时内
(如果
gym的话另当别论
)为你模拟当时的情境——包括
Standing等等
.
  
关于奇葩的测评结果
:
这包括
Compilation failed,Denial of Judgement

Judgement Failed.
这通常不是提交者的问题而是系统出了点差错.
Judgement Failed
通常会呈现爆发的样子
,
一段时间内几页都是
,
当这种情况结束的时候就正常了
;

Denial of Judgement
仅会在某段时间内在特定的题目发生
,
可能要等上个一两天才能得到解决
(
也有可能在问题解决后被自动重新测评
);Compilation failed
我还没有见过
...
字面意思是编译器不干活
?
2012年12月26日 08点12分 7
skipped是很么意思?
2012年12月26日 12点12分
回复 黑人和白人 :如果在一次比赛中,多次将某题Pretest Passed,则System Test的时候以最后一次为准,其余的就会被跳过(Skipped).
2012年12月26日 14点12分
上次很幸运,不小心忘去掉system("pause");然后。。。Judgement Failed
2012年12月27日 13点12分
回复 wyl8899 我也是这样,可是我只Pretest Passed了一次啊
2014年05月31日 02点05分
level 11
[拍砖]orz 无奈 住校党 时间问题 桑不起!!!
2012年12月26日 08点12分 8
可以事后做的。。
2012年12月27日 10点12分
回复 drcrow :rat[瞌睡]ing啥的呢?
2012年12月27日 10点12分
回复 named_Blue崩溃 :当然没有了= =
2012年12月27日 11点12分
回复 drcrow :[88]
2012年12月27日 11点12分
level 10

2012年12月26日 11点12分 10
level 13
Congratulations!
2012年12月26日 13点12分 11
恭喜发帖成功的意思……我绝对没有别的意思!~
2012年12月26日 13点12分
level 12
表示一到div1就要跪。。。求破。。。
2012年12月27日 04点12分 12
level 12
其实我想写封信让他改到星期五或六晚上
2013年03月06日 08点03分 13
+1
2013年03月06日 08点03分
.. 星期六晚上有 TCO 1C 。。。
2013年03月07日 07点03分
level 11

奇葩![啊?]
2013年03月11日 08点03分 14
level 12
原来cf是如此!好!可惜不搞oi了。
2013年03月11日 11点03分 15
level 1
codeforces可以修改名字么
2013年07月30日 07点07分 19
level 1
mark
膜拜大神!
2013年12月01日 12点12分 20
level 10
1700分以上参加div2 only的话可以涨分吗
2014年01月17日 13点01分 22
居然能参加…
2014年01月17日 13点01分
回复 FTD_Bug丶 :能报名 也能正常比赛 但是处于"Out of competition"状态 standing处的用户名前有星号作为标识 且成绩不计入最终排名
2014年01月17日 15点01分
level 9
补充.Denial of Judgement就是数组开的太大
(:MLE是中间超出限制,你开个1e5*1e5的数组就会直接Denial of Judgement
2014年01月18日 08点01分 23
1