Hi, Codeforces Community!
Initially, I thought I could cover everything I wanted to share in a single blog post since I didn't expect the story would become this long. Now, I decided to split it into two parts.
- In this part, I’ll share my personal IOI journey & short-term goals(free tutoring) in the world of competitive programming
- The second part, which I’ll publish in a few weeks, will be more technical and educational: I'll delve into the resources I've used and my approach to practicing.
First, let me briefly introduce myself. I am Luka Meladze, from Georgia. I've been practicing competitive programming intensively for the past 3-4 years. From today’s perspective, choosing CP as the very essence of my high-school life was the best decision I could have made. From the early days of my CP journey, my ultimate goal was to participate in IOI and earn a medal, in my opinion, the best programming competition.
In 2022, I placed 5th on TST and missed getting into a national team by one spot. I had two options: give up my dream and mainly focus on preparing for national exams or take a deep breath and go all-in on my passion. Thankfully, I chose the latter one.
What "going all-in" really meant for me: I can't say I followed a strict practice schedule; I almost never forced myself to set time constraints during training. But on average, I enjoyed practicing for 8-10 hours a day during the school term, increasing the duration as the qualifying round drew nearer.
On May 24, 2023, I performed pretty well in the team selection contest and placed 1st. It felt awesome, a mix of joy and responsibility solely to myself and my dreams: the whole, and only 3 months before IOI was ahead. From that moment, my summer routine started: I dedicated ~10 hours to practice each day, almost without fail—every day except for Sundays. Throughout my preparation and many OI problem-solving, I gradually gained self-confidence. So, my initial goal of earning a medal at IOI evolved into something more ambitious.
And so, I'm in Hungary, surrounded by an incredible community of programmers, enjoying every moment to the fullest. :) I kept repeating to myself the words: “No matter what the result is, I’ve gained a lot from these years, I’ve met a lot of amazing people, and even if I performed badly, I would not be too sad…”. But deep down, I knew that anything less than success would leave me disappointed!
Nothing special happened to me during day 1 of the competition; I just finished in the Silver medal zone.
And finally, the last day of my high school programming competitions came. I woke up at 6:30, stepped outside the hotel, listened to motivational songs, and read a conclusion part of Codeforces blog: “All seconds during competition have the same value, don't waste even a single second in the contest.“. After ~1 hour from the beginning of the competition, I mind-solved problem A (based on the scoreboard, the hardest one) for 70 points. Implemented and received the Wrong Answer verdict. Although I nearly never struggled with debugging my code during training, during the competition, I spent more than 2 hours trying to find what was wrong in the code of my obviously correct idea and seemingly correct code. I had two choices: spend time on problems B and C or persist in my endless debugging of problem A. I chose the latter, believing firmly that I could crack it and find the bug.
It was a few minutes before the end of the contest, but I still had a little hope because of the words I had in my mind from the blog I read in the morning: “The competition results won't be determined until the last minutes and even the last 0.1 second. The person who doesn't give up will win.” If this were a story from a happy-ended movie or a fairy tale, I'd have definitely solved the problem, but real life sometimes goes for the unexpected plot twist! The pressure did its job pretty well, and the contest ended, and I ended up with a bronze medal.
Although I was extremely disappointed that I didn't debug my code, with the help of having conversations with great people there, I managed to not worry about it a lot. As they said: “Even though getting bronze is already a notable achievement, the process of learning must be more important than getting good medals. It’s 100% okay to perform below your expectations. What matters is how you learned and grew out of it.”
I had a lot of fun and enjoyed spending several more days with the greatest people. These 7 days will definitely stay in my mind as both one of the bitterest and sweetest high school period memories. Indeed, it was much more than 7 days!
After returning to Georgia, I knew I couldn't change the past, but a curiosity about the bug in that IOI problem kept me wondering. I reached out to the organizers, and they sent me my incorrect source code. If I had made that little adjustment, swapping the positions of two miswritten variables, Sz and Cnt... I'd have been in the top 4 in this problem and would have gotten a silver medal. But I understand that it's part of the competition, and moreover, this is exactly why I love the Olympiad. I love IOI with everything, including the preparation process, pressure, unexpected scenarios during the development of the contest, etc. I do not regret any single second I've spent in this field since it gave me more than good medals and taught me more than just problem-solving — how to set and be passionately committed to my goals, be consistent, and aim higher all the time.
Free tutoring for 8-10 competitive programmers (preferably future IOI candidates)
Now, I have some free time since I’ve taken a gap year and am applying to U.S. universities. I'm taking a short break from my intensive preparation. I'm considering giving ICPC a shot when I enter university. First, I’m gonna use this break to explore and try some other things. But before making a decision about my future Olympiad CP career, I still want to do something connected to it and make a small contribution.
For me, it was hard to choose the problemset that I should follow. During my preparation, I made a lot of time-consuming mistakes because of my lack of experience. Moreover, I did not know about some useful materials and found out about them later. So, Having had experience in CP, I've decided that I could share my knowledge the best by tutoring several students (future IOI candidates) for free. I've already started teaching younger students at my programming school, but I'd like to train several international ones. I will choose them and form 2 groups based on their motivation and provide them with personalized instructions. Please contact me on discord: lukameladze#3563 and send me a short message: CF handle, background, and motivation. UPD: I don't accept additional requests, as I already received over 50 inquiries.
- Last but not least, big thanks to everyone from whom I learned a lot! Thank you, dear CP community, for giving me motivation. Competing with you has always been my pleasure!