Alternative name: "Road to Master when you don't have time".
Episode 1: link
Episode 2: link
Episode 3: October 2024
UPD: So glad to hear your support <3
I already feel it, just need to be calm.
Practice results
The first half of the month was mind-blowing for me. First, I managed to solve a 3200-rated problem. Then I noticed that I no longer felt as much joy from just solving problems, so I decided to try something new. I started doing virtual contests to see if I had better chance for master than before. I chose contests that I had already completed four years ago, and omg my dopamine levels exploded. In my first virtual contest, I reached top39.
After that, I realized I needed to see my rating, including virtual contests, so I found Codeforces Anytime. Second and third VC — top139 and top183. After two virtual contests, my rating was 1969, and my performance in the last one was 2203. That was impressive for me. I gained a lot of confidence, and in my next official contest, I reached top 39. Hell nah, that felt like a dream. Of course, that contest was late at night, so there were fewer participants, but still it was close to my best finish ever (top 33).
Then came another contest where I gained +54 rating points. Now I have a 2020 rating, and just one more top 100 finish could make me master. But... Average Codeforces moment and I dropped back to rxpert. At least in the last contest of the month, I took back Candidate Master, which is at least something.
Conclusion? Need to write VC before official rounds :)
By the way, I learned one interesting trick that I wish I knew before. I have been using it for a few days and I love it. After solving a problem, I add it to a document and add a few sentences about what the problem taught me. Maybe there is some trick or something else. I find that when I write, I understand the logical steps of the problem better and remember better.
Example: problem
If it looks like binary/ternary search problem, but it doesn't have one extremum, try to use greedy method but find lower/upper bounds for iterator.
So instead of binary_search(1, n) it will look more like for i in lower(n)..=upper(n)
Solved problems:
R | 1800 | 1900 | 2000 | 2100 | 2200 | 2300 | 2400 | 2500 | 2600 | 2700 | 2800 | 2900 | 3200 | Total |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Count | 5 | 3 | 0 | 6 | 10 | 5 | 6 | 5 | 3 | 4 | 1 | 0 | 1 | 48 |
Fun fact: every month I solve more problems (30->39->48) but spent +-the same amount of time. This means that I solve problems faster — nice(2)
.
Contest results
CF | Standings | Pos | Delta | Solved | Few notes |
---|---|---|---|---|---|
Codeforces Round 977 (Div. 2, based on COMPFEST 16 — Final Round) | link | 1215 | -8 | 3/8 | Nothing interesting on contest. Bad C2 implementation. But E1-3 problems were really interesting. Enjoyed upsolving up to E2. |
Codeforces Round 978 (Div. 2) | link | 39 | +163 | 4/7 | First contest after practicing few virtual contests. It was like midnight in my region but I decided to participate anyway. Top39. The best finish as for now. Instantly become CM. I actually believe I could solve even D2, but it was hard to focus on last minutes and D2 contains few edge cases. +motivation. |
Educational Codeforces Round 170 | link | 234 | +54 | 5/7 | Yeah buddy. That is the performance I expect from myself. Solved 5 problems, let's go. If I haven't made few mistakes on D, I could have been top 70. I really like that I was able E, that is 2200 rating (master performance). Now I have 2020 rating, just one good contest I need. |
Codeforces Round 979 (Div. 2) | link | 4085 | -136 | 3/8 | I'm an expert again. From this point I realized I don't want to cf anymore. I was really bad on thinking in this round. And then on implementation (D), so in general it was one of the worst performance during last 3 months. As usual after upsolving up to F, I realized it was just bad day, no need to panic. |
Codeforces Global Round 27 | link | 1990 | -38 | 4/9 | First div1+div2 for me (I want to participate in div1 as CM one day). 3 hours of emotional roller coaster (aka pain). I couldn't figure out how to solve C. I knew it should be an easy solution, but my brain stopped working. I almost cried, xd, I was so mad at the problem setters (but the only problem is me). I solved it. "Yeah, now I can quickly solve D, then E, then win the t-shirt." God damn it. Just WA2 all the time. A moment of silence for my angry control system. For the first time, I decided not to finish this contest. I went to the kitchen and made myself some food. Spent 15 minutes. Food in the microwave. Yeah, let's try this thing. Ugh, AC. I'm so glad I got this accepted, otherwise I'd end up with so much negative delta that the next cfs would just have to return those points. But -38 is like 0.5 of a good contest. Not such a big deal. Moving on. |
Educational Codeforces Round 171 | link | 441 | +55 | 4/6 | Last contest of the month. I need to become a CM or no one will read my november blog. Solid result. Top441, I almost couldn't have done better. I still don't know how to solve E. Or no, I know how to solve it, but it's f*cking flows. I decided not to even learn flows because I'd forget them after a few minutes anyway. I just understood what flows could theoretically solve, so next time I come across it, I can probably copy-paste a template (or no). Anyway, rating 1900, last cf of the month. What could be better? At least some positive results to keep practicing. |
Result | link | Avg. 1334 | +90 | Avg. 3.8/7.5 | I feel like now I am a solid CM. Nothing more to add. I need to become more consistent and learn how to control my emotions. The last few contests have upset me with how I handled my emotions. |
Mini achievements
- Fully upsolved 5 div2.
- Made it to the semi-finals of ICPC, but will not be able to attend it because...
- Finally became Candidate Master (twice) — max rating 2019.
- Top39 Div2.
- Solved 3200 problem without editorial (I swear, men, these numbers are pointless).
- Full live Div3 contest (top80).
- New topics: Kruskal Reconstruction Tree, Tree flattening with Euler tour, Xor hashing.
- 30+ active days
Conclusion
It's not as easy as I expected. Sometimes when I'm on +morality and think I already "have master abilities" I start setting higher goals like IM/GM, but then I wake up. I need to learn to control my emotions if I want to see great results. So I'm back in city and ready for changes.
You are cooking fr:)
Such an inspiring blog!.. Keep it up!
I think you’ll reach master pretty easily
I'm sorry that Codeforces Round 979 (Div. 2) gave you so much agony, but keep at it!!
Oops, miscommunication.
I mean the worst about my performance for the last 3m, the round was good <3
Very nice progression; you gained like 200-300 rating in just two months. That one contest had a very unclean C2 implementation using sets, but I think that the segment tree solution in the editorial was pretty clean. At least there wasn't really any casework for it.