Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Rating system update #18

Merged
merged 5 commits into from
Jun 6, 2020
Merged

Rating system update #18

merged 5 commits into from
Jun 6, 2020

Conversation

meooow25
Copy link
Owner

@meooow25 meooow25 commented May 25, 2020

There has been a change in the rating system of Codeforces (blog here).

Summary:

  • The default rating for new accounts is now 1400 instead of 1500.
  • The real rating is now hidden. Instead, a fake rating is shown which is realRating - f(numRatedContestParticipations) where the values of the function f at 0, 1, ... are [1400, 900, 550, 300, 150, 50, 0, 0, ...].

This PR updates the default value to 1400, but cannot deal with the second change.

The problem:

  • The real rating is not available through the API. Mike said he will make this available but it has been 2 weeks 5 months since and there has been no update to the API. The only other way to get real ratings of users for the purpose of rating calculation is to calculate the complete rating history of every user to ever participate in any Codeforces contest, which is not a suitable task for an extension.
    If the real rating is available, numRatedContestParticipations can be calculated from the difference between real and fake ratings.
  • Alternately, if numRatedContestParticipations could be conveniently available for all users through any API endpoint, the real rating can be obtained from the fake rating. Unfortunately, it is not. The alternate is to either query each individual user's rating history for every participant or query the rating changes for every contest on Codeforces ever, both of which again are not suitable tasks for an extension.

TL;DR: The Codeforces API is lacking and this recent change makes it impossible to predict rating changes accurately.

@meooow25 meooow25 marked this pull request as ready for review June 6, 2020 22:42
@meooow25 meooow25 merged commit c8bff80 into master Jun 6, 2020
@meooow25 meooow25 deleted the new-system branch June 6, 2020 23:39
@meooow25 meooow25 mentioned this pull request Oct 10, 2020
@meooow25 meooow25 changed the title New system Rating system update Oct 10, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant