C o d e F l o w CodeFlow CodeFlow rating体系:
参考文献:
https://www.cnblogs.com/ruierqwq/p/17973570/cf-at-rating
https://blog.csdn.net/CSDNhdlg/article/details/123729562
https://www.jianshu.com/p/1ae01cf56f0a?from=timeline
1 1 1、段位:
(1) F r e s h m a n Freshman Freshman 萌新 0 − 499 0-499 0−499
颜色:#808080
(2) N e w b i e Newbie Newbie 新手 500 − 799 500-799 500−799
颜色:#F0E68C
(2) P u p i l Pupil Pupil 学徒 800 − 999 800-999 800−999
颜色:#006400
(5) E x p l o r e r Explorer Explorer 探索者 1000 − 1199 1000-1199 1000−1199
颜色:#48D1CC
(6) C h a l l e n g e r Challenger Challenger 挑战者 1200 − 1399 1200-1399 1200−1399
颜色:#FF6347
(7) P i o n e e r Pioneer Pioneer 开拓者 1400 − 1599 1400-1599 1400−1599
颜色:#FFD700
(8) E l i t e Elite Elite 精英 1600 − 1899 1600-1899 1600−1899
颜色:#DAA520
(9) V a n g u a r d Vanguard Vanguard 先锋 1900 − 2099 1900-2099 1900−2099
颜色:#FF4500
(10) T o p E x p e r t Top Expert TopExpert 超级专家 2100 − 2299 2100-2299 2100−2299
颜色: #00008B
(11) L e g e n d Legend Legend 传奇 2300 + 2300+ 2300+
颜色:#8A2BE2
2 2 2、赛事:
(1) CodeFlow萌新周赛, div 2 2 2级别, r a t i n g ≤ 2099 rating \le 2099 rating≤2099。
(2) CodeFlow萌新提高赛,div 1 1 1级别, A L L ALL ALL 。
3 3 3、评分算法 ELO(模仿平台: c o d e f o r c e s codeforces codeforces):
如果超过了最高的限制rating范围,不发生任何改变。
1 1 1、比赛含金量 w 0 w_0 w0:
w 0 ( c o n t e n t ) = m a x ( 0.4 , 这场比赛能参与评级的人数 用户中能参与评级的人数 + 这场比赛的平均过题率 2 ) w_0(content) = max(0.4, \frac{\frac{这场比赛能参与评级的人数}{用户中能参与评级的人数} + 这场比赛的平均过题率}{2}) w0(content)=max(0.4,2用户中能参与评级的人数这场比赛能参与评级的人数+这场比赛的平均过题率)
2 2 2、对每个人之间计算一个 P ( i , j ) P(i, j) P(i,j) :
P ( i , j ) :第 i 个人得分超过 j 的概率 P(i, j):第i个人得分超过j的概率 P(i,j):第i个人得分超过j的概率
P ( i , j ) = 1 1 + 1 0 r j − r i 400 P(i, j) = \frac{1}{1+10^\frac{r_j-r_i}{400}} P(i,j)=1+10400rj−ri1
3 3 3、期望排名:
s e e d ( i ) = ∑ j = 1 ( j ! = i ) n ( P ( j , i ) + 1 ) seed(i) = \sum_{j=1(j!=i)}^{n}(P(j, i) + 1) seed(i)=∑j=1(j!=i)n(P(j,i)+1)
4 4 4、计算算术平均:
m i = s e e d i ∗ r a n k i m_i = \sqrt{seed_i*rank_i} mi=seedi∗ranki
5 5 5、计算得分:
( 1 1 1) 如果 s e e d i < m i seed_i < m_i seedi<mi 加分
( 2 2 2) 如果 m i < s e e d i m_i < seed_i mi<seedi 减分
二分得分得到最终rating, 最终rating的 s e e d i seed_i seedi接近 m i m_i mi。
6 6 6、inc微调
i n c = − 1 − ∑ d i n inc = \frac{-1-\sum{d_i}}{n} inc=n−1−∑di
* 7 7 7、最终变化值再乘以 w 0 w_0 w0。