0% found this document useful (0 votes)
111 views

(Tutorial) A Way To Competitive Programming - From 1900 To 2200

1. This document provides guidance on improving your Codeforces rating from 1900 to 2200. 2. It recommends focusing on fast solving of Div2 problems like Div2 D to reach 2100, then practicing advanced techniques and solving ARC-E problems to achieve stable 2200 ratings in Div1 contests. 3. Key steps include solving 50 Div2 D problems with a timer, virtual contests, and achieving top 100 solves on Div2 problems. For 2100 to 2200, the document recommends mastering advanced algorithms and solving nearly all ARC-E problems.

Uploaded by

Krutarth Patel
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
111 views

(Tutorial) A Way To Competitive Programming - From 1900 To 2200

1. This document provides guidance on improving your Codeforces rating from 1900 to 2200. 2. It recommends focusing on fast solving of Div2 problems like Div2 D to reach 2100, then practicing advanced techniques and solving ARC-E problems to achieve stable 2200 ratings in Div1 contests. 3. Key steps include solving 50 Div2 D problems with a timer, virtual contests, and achieving top 100 solves on Div2 problems. For 2100 to 2200, the document recommends mastering advanced algorithms and solving nearly all ARC-E problems.

Uploaded by

Krutarth Patel
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 6

[Tutorial] From rating 1900 to 2200

June 4th, 2018


E869120

1. Summary
Dear Codeforces community.
Today, I will write about the way to get 2200+ rating from 1900 in Codeforces. I think
this is useful for experts, candidate masters and masters. For beginners, I strongly recommend
to read my last year’s blog: [Tutorial] A way to practice competitive programming: from rating
1000 to 2000 .
This is only my way so I think the way may be not the best way, but I’d like to share my
way to practice. Anyway, I hope performance of many people who read this document will
increase.
This blog is extension version of my blog which is written about from 1000 to 2000. As
previous blog, I will divide with 3 steps: from 1900 → 2100, 2100 → 2200+. Recently,
Codeforces rating division changed. So, I will explain with New Codeforces Rating Color and
Division. (Which <2100 can participate in Div.2 contests)
2. Before My Way: Some Types of Contests (Knowledge)
Before main part, I should teach about some types of contests and statistics, so I added
this part. I will explain about Codeforces and AtCoder contests with statistics of rating and
solved.

2-1. Codeforces (Div. 2 contests, if 5 problems)

Problem Div2 A Div2 B Div2 C Div2 D Div2 E

Exp. rating 1050 1450 1750 2100 2600

⚫ Codeforces Div2 problems are called Div2A, Div2B, Div2C, Div2D, Div2E, in order.
⚫ “Exp. Rating = A “ means that if you solved this problem, your performance (rating) will
be A.
⚫ For example, if you solve normal-difficulty Div2 D problems and all previous problem,
your performance will be 2100.

2-2. Codeforces (Div. 1 contests, if 5 problems)

Problem Div1 A Div1 B Div1 C Div1 D Div1 E

Exp. rating 1600 1950 2250 2750 3200

⚫ Codeforces Div1 problems are called Div1A, Div1B, Div1C, Div1D, Div1E, in order.
⚫ Usually, Div1 problems needs a lot of concept. Conversely, usually Div2 problems needs
less concept, and it can be solved with implementation and some techniques (Graph
Theory, Number Theory, 2-SAT, Bitmasks,… etc.)
2-3. AtCoder Regular Contest

Problem ARC-C ARC-D ARC-E ARC-F

Exp. Rating (in CF) 1400 1800 2200 2500

⚫ AtCoder Regular Contest (ARC) consists of 4 problems. Each problem called ARC-C,
ARC-D, ARC-E, ARC-F, in order.
⚫ Usually, ARC problems need a lot of concept like Codeforces Div1.
⚫ AtCoder have 3 types of contests which called AtCoder Beginner Contest, AtCoder
Regular Contest, AtCoder Grand Contest. But I only use ARC for my explanation.

2-4. How to solve AtCoder problems?

I think many people think “You can choose problem that I didn’t solve in Codeforces,
but in AtCoder, I can’t”. But there is a convenient website, which called AtCoder Problems,
and you can see what problem did you solved.

This website is very good: for example, you can know how much percent of ARC-E did
you solve, and know your progress.
3. Step 1: Rating 1900 → 2100
In order to gain rating from 1900 to 2100, you should solve 3 problems stable and faster.
For example, in Codeforces Round 484 (Div2), in reality, ~250 out of 370 contestants
who solved problem D solved this problem after 1 hour passed. Although this, most people
who can solve problem faster (solved 4 problems in <1 hours) got <50-th place in this Div2
contest.
So, I think fast solving is very important, even more important than solving difficult
problems for most candidate masters.

So, I recommend to do following things for people whose rating is 1900-2100:


⚫ Solve Div2 D or ARC-D problems (at least 50 problems) with conscious of speed-solving,
because fast-solving form grows with experience.
⚫ To solve problem, you should do virtual which correct only proper problem. For example
in Codeforces, do 2 hours virtual contests of 5 Div.2 problems which the number of
solvers during contest is 300-500.
⚫ If you want to solve a single problem, you should use a timer which indicate the time you
solved.

Goal (Rating 2100)

⚫ You can solve problem faster than other problems – in particular, being Top-100 fastest
solver for most problems in Div2 contests.
⚫ If you achieve this, median value of your Div2 contests’ rank will be less than 100 – it
means your will go to Div1 at least once!
4. Step 2: Rating 2100 (Once) → 2200 (Stable)
In order to gain rating from 2100 to 2200, you should play high performance in Div1
contests. (It is obvious, because >=2100 is not rated in Div2 contests)

To get higher scores in Div1 contests, you should know trends of Div1 contests. The
trends that I investigated is as follows:
⚫ There are more concepts / considering in Div1 problems than Div2 problems. Although
this, you should use high-level techniques in some contests.
⚫ As usual, Div2 problems can solve with major techniques but some Div1B or Div1C needs
your brain. The problems are a little similar to ARC problems. (But still, for some
problems implementation is heavy)
⚫ You should solve at least 2 problems to maintenance your rating. (If you are not good at
speed-solving, you should solve 3)

To achieve this, I did following 2 things.


⚫ Know all techniques which use frequently to participate in CF Div1 contests. The list of
this is as follows:

RMQ BIT Lazy Segment Trees Union Find Cycle Detection

Dijkstra SCC Maximum Flow Mincost Flow Mod Inverse

Rolling Hash Suffix Array FFT 2-SAT

⚫ To polish your concept skills, you should solve ARC-E problems. There are 40+ English
ARC-E problems, so you can solve a lot. Even if you want to give up, I recommend to
challenge at least 1 hours to solve the problem. (If you can’t solve the problem even after
1 hours, you can solve it after 1-2 months. If you can’t solve the problem in 2nd or 3rd
challenge, you should see editorials.)
⚫ Actually, I solved 97/98 problems of ARC-E.
⚫ There is another way to polish your brain: It’s TopCoder. Harder problems of TopCoder
Div1 Easy (the first problem) uses your brain much. So, if you solve almost all problems
of ARC-E, you should solve TopCoder Div1 Easy or Medium.
Goal Indication (Rating 2200 stable)

⚫ Solve 70%+ of ARC-E problem.


⚫ Being Top 200 in Div1 contests – it means solve 2 problems faster or sometimes, solve 3
problems

5. Extra Corner
I did these things which is not related to solve problems, but they boost your rating
mentally.
⚫ Some people will be nervous during the contest, So, you should take a rest from 10
minutes before the contests.
⚫ Don’t mind about rating during the contest – if you mind about your rating strongly,
when you fail to solving easier problems faster, you cannot solve latter problems.

6. Conclusion
How was this document? Do you think that it is useful?
I wrote about an example of practice to boost rating from 1900 to 2200. I will say as a
premise: This way not always fit for some people. The number of ways to practice is not only
one: there are googols of ways. But I guess that my way is one of the effective way. I hope it
will be useful even a little. (Also, sorry for my poor English.)
Thank you for reading.

You might also like