Codeforces Rating System

To translate official documents, but it is recommended to see the English original , the paper may be some mistakes, though not in order to facilitate access to their own use.


First of all, for the people \ (i \) , defined \ (r_i \) is his rating, for the people \ (i, J \) , defined \ (P_ {i, j} \) as in a game \ ( i \) than \ (j \) strong probability.

Codeforces want to try to make this persimmon Founded:

\[P_{i,j}=\frac{1}{1+10^{\frac{r_j-r_i}{400}}}\]

Before the start of a game, the definition \ (seed_i \) for the first \ (i \) personal expectations rankings. Obviously \ (. 1 + seed_i = \ SUM \ limits_ {J \ NE of P_} I {J, I} \) .

After the game (at this time, if it is rated) taken \ (m_i \) of \ (seed_i \) and the actual rank \ (rank_i \) geometric mean ( \ (m_i = \ seed_irank_i sqrt {} \) ). Ranking calculated based on the actual performance of the person in this game rating \ (R_i \) , then the person's rating change \ (D_i = \ {R_i FRAC-r_i {2}} \) .

But this is not the end. To make changes in the average rating is closer to 0, but also fine-tuning.

And then define a number \ (INC. \) , So that all \ (D_i INC. + = \) .

Calculation methods, to fine-tune for the first time, this Let \ (-1-INC. = \ SUM D_i \) . This ensures that all changes in average close to 0 and 0 or less.

Then a second fine-tuning before the game before taking Rating \ (S = \ min (n-,. 4 \ n-sqrt {}) \) tall person ( n-\ (\) is the number of entries), reasonable setting \ (inc is \ ) before such \ (S \) mean individual variation is zero. However, this \ (inc is \) not be too large, so \ (= inc is \ max (\ min (inc is, 10), 0) \) . With this \ (inc \) a second fine-tuning.

So, this rating is calculated disgusting than a surname OJ A next door and more, to play a disorder that is not friendship ......

Guess you like

Origin www.cnblogs.com/1000Suns/p/11701028.html