Sorting's blog

By Sorting, 7 years ago, In English

Hi guys! I have prepared for you some statistics on how countries are performing against each other in Codeforces which I hope you will find interesting!

Top 5 countries with the most users with certain rank:

Top 5 countries with highest percentage of their users in a certain rank:

(Here I don't count countries that have less than 10 Codeforces users)

Newbie:

Pupil:

Specialist:

Expert:

Candidate Master:

Master:

International Master:

Grandmaster:

International Grandmaster:

Legendary grandmaster:

And some lists:

List of countries ordered by average rating:

(again users>=10)

  1. North Korea with average rating of 1835 and user count of 53
  2. Finland with average rating of 1751 and user count of 54
  3. Sweden with average rating of 1735 and user count of 59
  4. Poland with average rating of 1729 and user count of 503
  5. Switzerland with average rating of 1715 and user count of 53
  6. New Zealand with average rating of 1699 and user count of 19
  7. Slovakia with average rating of 1698 and user count of 84
  8. China with average rating of 1662 and user count of 7786
  9. Australia with average rating of 1659 and user count of 95
  10. Hungary with average rating of 1656 and user count of 58
  11. Japan with average rating of 1653 and user count of 997
  12. Taiwan with average rating of 1650 and user count of 482
  13. Latvia with average rating of 1649 and user count of 74
  14. Czechia with average rating of 1648 and user count of 115
  15. Canada with average rating of 1641 and user count of 228
  16. Croatia with average rating of 1633 and user count of 178
  17. Israel with average rating of 1630 and user count of 34
  18. Netherlands with average rating of 1629 and user count of 56
  19. South Korea with average rating of 1615 and user count of 694
  20. Iceland with average rating of 1614 and user count of 13
  21. South Africa with average rating of 1612 and user count of 23
  22. Argentina with average rating of 1612 and user count of 134
  23. Hong Kong with average rating of 1605 and user count of 164
  24. Thailand with average rating of 1603 and user count of 190
  25. Slovenia with average rating of 1602 and user count of 29
  26. Italy with average rating of 1599 and user count of 115
  27. Singapore with average rating of 1591 and user count of 88
  28. United States with average rating of 1590 and user count of 1067
  29. Denmark with average rating of 1583 and user count of 23
  30. Austria with average rating of 1582 and user count of 23
  31. Germany with average rating of 1578 and user count of 157
  32. France with average rating of 1575 and user count of 140
  33. Bulgaria with average rating of 1575 and user count of 185
  34. Norway with average rating of 1571 and user count of 30
  35. United Kingdom with average rating of 1567 and user count of 113
  36. Romania with average rating of 1565 and user count of 686
  37. Estonia with average rating of 1563 and user count of 41
  38. Spain with average rating of 1555 and user count of 103
  39. Philippines with average rating of 1553 and user count of 52
  40. Serbia with average rating of 1544 and user count of 175
  41. Turkey with average rating of 1533 and user count of 349
  42. Brazil with average rating of 1532 and user count of 766
  43. Belarus with average rating of 1532 and user count of 962
  44. Lebanon with average rating of 1526 and user count of 38
  45. Greece with average rating of 1525 and user count of 52
  46. Vietnam with average rating of 1524 and user count of 1512
  47. Belgium with average rating of 1523 and user count of 53
  48. Russia with average rating of 1516 and user count of 6225
  49. Ukraine with average rating of 1503 and user count of 1382
  50. Cyprus with average rating of 1500 and user count of 19
  51. Cuba with average rating of 1498 and user count of 194
  52. Macedonia with average rating of 1496 and user count of 70
  53. Mexico with average rating of 1488 and user count of 208
  54. Bosnia and Herzegovina with average rating of 1484 and user count of 27
  55. Portugal with average rating of 1483 and user count of 40
  56. Turkmenistan with average rating of 1479 and user count of 75
  57. Armenia with average rating of 1472 and user count of 155
  58. Iran with average rating of 1466 and user count of 1552
  59. Ireland with average rating of 1464 and user count of 32
  60. Zimbabwe with average rating of 1462 and user count of 11
  61. Mongolia with average rating of 1462 and user count of 127
  62. Lithuania with average rating of 1460 and user count of 120
  63. Moldova with average rating of 1459 and user count of 101
  64. Indonesia with average rating of 1459 and user count of 594
  65. Chile with average rating of 1459 and user count of 55
  66. Peru with average rating of 1452 and user count of 218
  67. Malaysia with average rating of 1448 and user count of 67
  68. Venezuela with average rating of 1438 and user count of 71
  69. Kyrgyzstan with average rating of 1434 and user count of 122
  70. Sri Lanka with average rating of 1430 and user count of 30
  71. Kazakhstan with average rating of 1423 and user count of 1031
  72. Georgia with average rating of 1417 and user count of 314
  73. India with average rating of 1408 and user count of 9103
  74. Tajikistan with average rating of 1398 and user count of 131
  75. Uzbekistan with average rating of 1392 and user count of 320
  76. Colombia with average rating of 1389 and user count of 229
  77. Syria with average rating of 1377 and user count of 392
  78. Azerbaijan with average rating of 1377 and user count of 114
  79. Pakistan with average rating of 1368 and user count of 19
  80. Nepal with average rating of 1358 and user count of 17
  81. Palestinian Territory with average rating of 1351 and user count of 17
  82. Morocco with average rating of 1341 and user count of 143
  83. Egypt with average rating of 1335 and user count of 1930
  84. Saudi Arabia with average rating of 1330 and user count of 29
  85. Jordan with average rating of 1321 and user count of 245
  86. Tunisia with average rating of 1319 and user count of 258
  87. Oman with average rating of 1317 and user count of 10
  88. Bolivia with average rating of 1317 and user count of 115
  89. Dominican Republic with average rating of 1304 and user count of 78
  90. Bangladesh with average rating of 1262 and user count of 3338

List of countries by Topcoder-like score

(users>=10)

  1. Russia with score of 2974
  2. China with score of 2931
  3. Japan with score of 2779
  4. South Korea with score of 2775
  5. Poland with score of 2738
  6. United States with score of 2679
  7. Belarus with score of 2655
  8. Ukraine with score of 2633
  9. Taiwan with score of 2523
  10. Romania with score of 2476
  11. Croatia with score of 2461
  12. Iran with score of 2458
  13. Canada with score of 2405
  14. India with score of 2399
  15. Vietnam with score of 2367
  16. Brazil with score of 2338
  17. Australia with score of 2338
  18. Indonesia with score of 2320
  19. Hong Kong with score of 2305
  20. Kazakhstan with score of 2290
  21. Switzerland with score of 2287
  22. North Korea with score of 2273
  23. Czechia with score of 2250
  24. Sweden with score of 2249
  25. Thailand with score of 2230
  26. Slovakia with score of 2225
  27. Argentina with score of 2224
  28. Finland with score of 2202
  29. Bangladesh with score of 2202
  30. Bulgaria with score of 2201
  31. Latvia with score of 2186
  32. Turkey with score of 2174
  33. Germany with score of 2174
  34. Egypt with score of 2173
  35. Singapore with score of 2150
  36. Serbia with score of 2138
  37. Armenia with score of 2124
  38. Italy with score of 2115
  39. France with score of 2110
  40. United Kingdom with score of 2107
  41. Lithuania with score of 2100
  42. Georgia with score of 2097
  43. Netherlands with score of 2085
  44. Uzbekistan with score of 2073
  45. Spain with score of 2072
  46. Syria with score of 2065
  47. Hungary with score of 2053
  48. Peru with score of 2049
  49. Cuba with score of 2037
  50. Mexico with score of 2016
  51. Moldova with score of 1988
  52. Philippines with score of 1969
  53. Belgium with score of 1967
  54. Jordan with score of 1960
  55. Kyrgyzstan with score of 1951
  56. Colombia with score of 1950
  57. Estonia with score of 1942
  58. Malaysia with score of 1925
  59. South Africa with score of 1904
  60. Tajikistan with score of 1903
  61. Israel with score of 1898
  62. Azerbaijan with score of 1888
  63. Slovenia with score of 1873
  64. Turkmenistan with score of 1872
  65. Macedonia with score of 1869
  66. Mongolia with score of 1858
  67. Greece with score of 1851
  68. Venezuela with score of 1838
  69. Austria with score of 1824
  70. Portugal with score of 1790
  71. Lebanon with score of 1775
  72. Iceland with score of 1775
  73. Denmark with score of 1757
  74. New Zealand with score of 1748
  75. Chile with score of 1737
  76. Bolivia with score of 1732
  77. Morocco with score of 1730
  78. Norway with score of 1724
  79. Tunisia with score of 1706
  80. Dominican Republic with score of 1696
  81. Bosnia and Herzegovina with score of 1678
  82. Sri Lanka with score of 1655
  83. Ireland with score of 1650
  84. Cyprus with score of 1618
  85. Zimbabwe with score of 1581
  86. Saudi Arabia with score of 1536
  87. Nepal with score of 1459
  88. Pakistan with score of 1449
  89. Palestinian Territory with score of 1429
  90. Oman with score of 1364

List of countries ordered by highest rated user

(users>=10)

  1. Belarus with highest rating of 3496 and user count of 962
  2. Russia with highest rating of 3298 and user count of 6225
  3. China with highest rating of 3294 and user count of 7786
  4. Switzerland with highest rating of 3218 and user count of 53
  5. Australia with highest rating of 3109 and user count of 95
  6. Japan with highest rating of 3106 and user count of 997
  7. Poland with highest rating of 3084 and user count of 503
  8. South Korea with highest rating of 3071 and user count of 694
  9. United States with highest rating of 3014 and user count of 1067
  10. South Africa with highest rating of 2941 and user count of 23
  11. Ukraine with highest rating of 2914 and user count of 1382
  12. Croatia with highest rating of 2851 and user count of 178
  13. Romania with highest rating of 2835 and user count of 686
  14. Sweden with highest rating of 2801 and user count of 59
  15. Slovakia with highest rating of 2749 and user count of 84
  16. Iran with highest rating of 2747 and user count of 1552
  17. Czechia with highest rating of 2732 and user count of 115
  18. Taiwan with highest rating of 2726 and user count of 482
  19. Canada with highest rating of 2698 and user count of 228
  20. Malaysia with highest rating of 2691 and user count of 67
  21. Lithuania with highest rating of 2689 and user count of 120
  22. Netherlands with highest rating of 2687 and user count of 56
  23. France with highest rating of 2684 and user count of 140
  24. Latvia with highest rating of 2671 and user count of 74
  25. Hong Kong with highest rating of 2655 and user count of 164
  26. Italy with highest rating of 2614 and user count of 115
  27. Brazil with highest rating of 2582 and user count of 766
  28. Armenia with highest rating of 2575 and user count of 155
  29. Finland with highest rating of 2551 and user count of 54
  30. India with highest rating of 2549 and user count of 9103
  31. Argentina with highest rating of 2543 and user count of 134
  32. North Korea with highest rating of 2502 and user count of 53
  33. Indonesia with highest rating of 2489 and user count of 594
  34. Kazakhstan with highest rating of 2471 and user count of 1031
  35. Moldova with highest rating of 2437 and user count of 101
  36. Bangladesh with highest rating of 2435 and user count of 3338
  37. Thailand with highest rating of 2434 and user count of 190
  38. Vietnam with highest rating of 2433 and user count of 1512
  39. United Kingdom with highest rating of 2429 and user count of 113
  40. Philippines with highest rating of 2421 and user count of 52
  41. Turkey with highest rating of 2410 and user count of 349
  42. Singapore with highest rating of 2400 and user count of 88
  43. Bulgaria with highest rating of 2384 and user count of 185
  44. Estonia with highest rating of 2379 and user count of 41
  45. Germany with highest rating of 2366 and user count of 157
  46. Cuba with highest rating of 2361 and user count of 194
  47. Belgium with highest rating of 2352 and user count of 53
  48. Spain with highest rating of 2327 and user count of 103
  49. Syria with highest rating of 2325 and user count of 392
  50. Uzbekistan with highest rating of 2323 and user count of 320
  51. Jordan with highest rating of 2305 and user count of 245
  52. Serbia with highest rating of 2286 and user count of 175
  53. Dominican Republic with highest rating of 2279 and user count of 78
  54. Egypt with highest rating of 2271 and user count of 1930
  55. Mexico with highest rating of 2248 and user count of 208
  56. Iceland with highest rating of 2242 and user count of 13
  57. Austria with highest rating of 2227 and user count of 23
  58. Hungary with highest rating of 2213 and user count of 58
  59. Peru with highest rating of 2210 and user count of 218
  60. Georgia with highest rating of 2206 and user count of 314
  61. Colombia with highest rating of 2200 and user count of 229
  62. Kyrgyzstan with highest rating of 2196 and user count of 122
  63. Slovenia with highest rating of 2188 and user count of 29
  64. Tajikistan with highest rating of 2147 and user count of 131
  65. Portugal with highest rating of 2110 and user count of 40
  66. Zimbabwe with highest rating of 2107 and user count of 11
  67. Venezuela with highest rating of 2103 and user count of 71
  68. Greece with highest rating of 2103 and user count of 52
  69. New Zealand with highest rating of 2092 and user count of 19
  70. Macedonia with highest rating of 2077 and user count of 70
  71. Sri Lanka with highest rating of 2073 and user count of 30
  72. Israel with highest rating of 2071 and user count of 34
  73. Turkmenistan with highest rating of 2038 and user count of 75
  74. Morocco with highest rating of 2029 and user count of 143
  75. Denmark with highest rating of 2029 and user count of 23
  76. Azerbaijan with highest rating of 2013 and user count of 114
  77. Mongolia with highest rating of 1993 and user count of 127
  78. Lebanon with highest rating of 1967 and user count of 38
  79. Cyprus with highest rating of 1966 and user count of 19
  80. Saudi Arabia with highest rating of 1958 and user count of 29
  81. Ireland with highest rating of 1947 and user count of 32
  82. Bolivia with highest rating of 1933 and user count of 115
  83. Chile with highest rating of 1911 and user count of 55
  84. Tunisia with highest rating of 1903 and user count of 258
  85. Norway with highest rating of 1849 and user count of 30
  86. Bosnia and Herzegovina with highest rating of 1846 and user count of 27
  87. Nepal with highest rating of 1703 and user count of 17
  88. Pakistan with highest rating of 1625 and user count of 19
  89. Palestinian Territory with highest rating of 1617 and user count of 17
  90. Oman with highest rating of 1465 and user count of 10
  • Vote: I like it
  • +212
  • Vote: I do not like it

»
7 years ago, # |
  Vote: I like it +32 Vote: I do not like it

Interesting stats. My two cents:

  • the rating is a logarithmic scale, perhaps arithmetic mean is not the thing you're looking for. See how TopCoder does it
  • how about retrieving the number of LGM/GM etc. per capita? (You see I'm trying to get Czechia to top places :-) )
  • »
    »
    7 years ago, # ^ |
    Rev. 2   Vote: I like it +25 Vote: I do not like it

    Rating system explained: http://codeforces.net/blog/entry/20762

    The rating system is not a logarithmic scale, it's a linear (or affine, to be precise) interval scale. The difference of ratings is what is meaningful, and the rating 0 doesn't have any specific meaning. Also the TopCoder page you link to explains just a weighted arithmetic mean.

    • »
      »
      »
      7 years ago, # ^ |
        Vote: I like it 0 Vote: I do not like it

      Therefore for two participants the probability to win/lose depends on subtraction of their ratings. For example, if the difference of ratings is equal to 200 then stronger participant will win with probability ~0.75. If the difference of ratings is equal to 400 then stronger participant will win with probability ~0.9.

      So by becoming X times better you get  + Y rating. Looks logarithmic to me.

      • »
        »
        »
        »
        7 years ago, # ^ |
        Rev. 2   Vote: I like it +10 Vote: I do not like it

        I'm not following at all. Rating difference of 0 means 0.5 win probability, rating difference of 200 means 0.76 win probability, rating difference of 400 means 0.91 win probability, rating difference of 600 means 0.97 win probability. How's that "X times better, +Y rating"?

        • »
          »
          »
          »
          »
          7 years ago, # ^ |
            Vote: I like it +13 Vote: I do not like it

          The intuition I have behind this is that as follows. Take two players A and B that have a rating difference of 200. The Elo system says that the stronger one will win in 76% of the cases. This means that his odds of winning are . We can thus say that A is (roughly) 3 times stronger than player B. Note that this is (or at least theoretically should be) the same on all levels, regardless of whether you are at 1600 or 2600. There are many different factors that may skew this property, such as rating floors, different multipliers (as it is in chess), or division boundaries, but let's assume that it is true.

          Now, let's take two players change the rating difference to 400. This corresponds to probability of winning of 0.91, which equals to odds slightly over 10. A rating difference of 400 is the same as two differences of 200 and indeed we have 3.172 ≈ 10.

          We have established that the odds of a player winning increases exponentially with his rating (it's not surprising when one looks at the formula). From a different perspective, player's rating is logarithmic with respect to his odds of winning.

          Arguably the view I provided is somewhat arbitrary. It yields an important insight, though. Take two players A, B of strengths 2800 and 1200, and two players C and D of rating 2000 each to form two teams. Clearly the arithmetic mean is same for both, yet in many sports you would observe that team A + B has much better odds than C + D.

          This is why I object against using arithmetic mean to compare countries strength. Its sheer amount of active coders places Russians on 48th place yet there are one of the strongest, if not the best.

  • »
    »
    7 years ago, # ^ |
    Rev. 3   Vote: I like it +10 Vote: I do not like it

    Thanks for the comment! I've added a list with scores made with TopCoder's formula. I tried the second ranking a couple of times with slight variations but it didn't really bring any new information nor it turned out well for Czechia so I decided not to include it (oh and North Korea became first again). The first one on the contrary, gave a much more realistic result and I thank you very much for introducing me to it.

»
7 years ago, # |
  Vote: I like it +6 Vote: I do not like it

North Korea remains superior..

»
7 years ago, # |
  Vote: I like it +30 Vote: I do not like it

Am I the only one who finds it awesome that this post was created by Sorting?

Great post by the way! Congrats and thanks for all this useful data!