Codeforces Stats Visualization

Codeforces is a popular competitive programming platform that hosts regular online contests and practice problems. The platform has a rating system that assigns a rating to each user based on their performance in the contests. The rating ranges from 0 to 3500, with

0-1200 for Newbie
1200-1400 for Pupil
1400-1600 for Specialist
1600-1900 for Expert
1900-2100 for Candidate Master
2100-2300 for Master
2300-2400 for International Master
2400-2600 for Grandmaster
2600-3000 for International Grandmaster
>3000 for Legendary Grandmaster

and higher ratings indicating better performance. The tool aims to helps competitive programmers to improve their game in the field of competitive programming by analyzing different aspects of the platform.



Let's Begin the Analysis

Problem Tags Analysis

The Problems on the codeforces platform ranges from Level A-L and from 800-3500 rating, the aim of the charts is to help user understand the trend of different tags as problem level and rating changes. Additional Play, Pause, Next, Previous Button has been provided to help user get informations about each of the tags in a video fashion. We have also added additional summary of each tag to help the user to get most out of the chart.

Tags Conclusion

  • Tags Cumulative Analysis

    The aim of this chart is to provide cumulative analysis of all the tags, by giving the frequency of each of the tags.

  • Conclusion

    Based on the graph's above of problem tags vs rating we found that the user's of different rating ranges should focus on the tags as show in the textarea below.




Analysis based on Users

Understanding how users of different ratings ranges Practice

Problem's of the codeforces platform have a difficulty given to them, and based on their diffulty we categorized them into newbie level, pupil level and so on. Then for users in each rating range we have showed the count of problems solved by them in the different problem rating ranges. This will help users to understand which problem level should they solve when they are aiming to reach a particular rating level.

Understanding the Time Game

Different Users take different amount of time to solve a particular question in a contest, based on their level of expertise and their speed of solving the problem in the contest decides their rank. Hence, the below chart helps the user to understand how much speed should be aim to acheive if he/she wishes to reach a particular rating level. The below chart is based on Nebius Welcome Round (Div. 1 + Div. 2).

Understanding the importance of Patience

Understanding growth in the sport of competitive programming helps the user to set appropriate goals. Hence, we have showed in the below graph the amount of time spent by users of different rating ranges to reach that level, to help the user understand the amount of time and dedication it took for users to reach that level.

Some additional Statistics

Distribution of contest across the year

Knowledge of the contest schedule can help the user to better plan his time, so that he can participate in maximum amount of contest and hence remain in constant touch with problem solving and hence we have done this using the chart shown below.

Confused which Language to use? Don't worry follow the Stats

One of the biggest question that any beginner faces in the feild of competitive programming is that which language to choose and to make the answer to that easier we have made the chart below, to help the user see the most popular languages used on the platform.

Let's see how it's growing in our home country India


See how the sport of competitive programming was grown in our country over the years and how advent of covid in 2019 changed everything.