HackerEarth organizes following rated contests every month:
Event Type | Organized on | Duration |
---|---|---|
Monthly Easy Challenge | 1st of every month | 3 Hours. |
Monthly Clash Challenge | 2nd Saturday of every month | 24 hours. |
Monthly Circuits Challenge | 3rd Friday of every month | 1 week. |
The Elo rating system is used to calculate relative skill levels of users in competitive-programming rated contests. The difference between ratings of two users is used to predict the outcome of competitive challenges that are conducted by HackerEarth.
The points that are gained or lost by auser depend upon the difference of the ratings of users.
If a higher-rated user wins against a lower-rated user, the points that are taken away from the lower-rated user will be less. However, when a lower-rated user wins against a higher-rated user, the points taken will be high.
The probability of a user with a rating Ra being placed higher than a person with a rating Rb is equal to:
A constant known as the ‘K Factor’ is used to multiply with the changes in rating to decide the force with which a user’s rating should increase or decrease.
We divide all the developers into two classes:
The base rating for every user is considered to be ‘1500’. Rated contests belong to particular difficulty based on the difficulty of problems in the contest.
K factor is varied based on the ‘DIV’ of the contest. Therefore, for every contest based on the class K factor is selected and the change in rating is obtained by using the following equation:
Here, the expected score is obtained by using the Elo formula. The actual score is calculated by considering the position of the user and then compared to every other user in the challenge.
Currently, HackerEarth does not decrease the user’s rating for non-participation or lower participation in rated contests however, in the future, a user’s rating may decrease for non-participation over a long period of time. If implemented, we will notify users about this change.