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.
so VC definitely help gonna do it myself too now maybe it will improve my contest mindset