Hey everyone,
I know this is probably going to be cringe and shameful, but I really need help because it feels like I’m stuck in a big hole.
The team selection for my country's informatics olympiad will probably be in about a month, and to be honest, I’m kind of screwed right now. I'm terrible at olympiad-style competitive programming, and I suck at Codeforces-style contests too—but olympiads are a whole other level.
My biggest issue is time management. Spending five hours on three problems feels like an eternity. If I can’t solve something in the first 1.5 hours, I just give up and completely lose focus for the rest of the contest. I find it really hard to sit there and keep pushing when nothing's working. Even when I tell myself to move on, it just doesn't happen. Plus, I get crazy anxious and stressed both before and during the contest. If I feel like I’m messing up, it all goes downhill from there. I can't seem to control it, and it totally ruins my performance.
I’m not great at olympiad-style problems either. From what I’ve heard, these contests have some seriously weird and complex problems. Recently, I tried solving some past IZHO problems, and I was honestly lost. The problem style is just so different from what I’ve seen before, and when I can’t even get started, my brain just shuts off.
In terms of algorithms, I can handle most topics up to the very hard problems in the USACO Guide’s gold section. In the platinum section, I think I can solve some of the hard problems within 1.5-2 hours. So, algorithmically, I’m feeling fine. (But here's the thing—I’m pretty sure our olympiad doesn’t have any communication, interactive, or constructive problems. We just need to focus on the classic types, so that’s what I need to be working on. You don’t need to factor that in, just wanted to clarify.)
I’ve got exactly one month to prepare, and I’m definitely committed to putting in the work. But I've read a ton of blog posts on this subject, and most of them just talk about problem-solving strategies, which are helpful but not what I need right now. My real struggle is psychological. I need advice on how to deal with long contests without burning out, how to stay calm when I’m stuck, and how to keep my confidence from totally disappearing. Right now, every contest feels like a mental battle, and I don’t know how to fix it.
If anyone has gone through this or has any tips, I’d really appreciate it. How do I stay focused for longer, deal with the stress, and build my confidence for the contest?
Thanks in advance!
And thanks for reading all the whining of a teenager.
(Maybe I’m just depressed right now, or I’m really pushing myself too hard—maybe I’m going through burnout, or maybe I should try doing something different with my friends or talk to a psychologist or someone. Just wanted to throw that out there.)
nah you'd win
From the way you talk, it seems like you don't have any real experience of olympiads. So, no advice will have real help until you participate in one. Nevertheless, I can try to give 2 general pieces of advice.
Codeforces contests are ICPC style contests, meaning you have to solve the problem fully, when you solve matters, and failed submission attempts matter. But in olympiads, you can solve a problem partially and get some points, you can solve the problem at the last minute and get the same points as someone solving it in the first minute, and you can have failed submissions with no effect on your score (the only problem can be if there is a submission limit and you pass that limit, but mostly those limits are put in a way that you should not be passing them). So, the strategy is completely different. Instead of trying to solve problems fully, if you cannot think of an idea that will give you a full solution in some short time (let's say 15 minutes, but it can vary from person to person), look at each subtask as if they're their own problems. So you will not have 3 difficult problems but 10-15 problems with increasing difficulty, with some of them being very easy.
Try to build a mechanism to calm yourself down. Although I would say that stress is important during the contest to keep yourself concentrated on the topic, too much of it will create anxiety and limit your work rate. I'm not sure if you can create such a thing in a month, but it's worth a try. (E.g. touch your fingertips sequantially, and make it a calming down gesture for yourself)
P.S. From my own experience, the last 30 minutes is very important, and ideas can come flooding into your brain. So try your best to not leave the contest early
Actually, I’ve participated in the our national olympiad twice, so I have some olympiad experience little (but that's all). In my second olympiad, I didn’t focus on subtasks, which resulted in a lower score. Therefore, I’ll definitely pay more attention to this aspect. I also plan to take a closer look at the second piece of advice, maybe I’ll find a method that will be helpful to me. Thank you for the tips!
Guy, I realize you. I have failed my only National Informatics Olympiad(NOI). You guess what? I pay 5 hours totally on problem 1!!! I'm sure you can see how stupid this is. If you are stuck in a problem, don't be nervous. Just write a brute force algorithm to skip it. I know it's easy to make mistakes in a high-pressure environment like this. Having a strategy is more important than having problem-solving skills. You don't need to be afraid of how much better other people are than you, try checking your brute scores if you don't believe me! You could find it can reach at least 120 or more! A strategy like this will guarantee you at least a silver medal.
Then this is my story:
I attended NOI a year ago, you can check out my rating graph and you will be amazed at ‘how someone like me can attend NOI’. The truth is that I used to write violent algorithms for every question in the qualifiers before going through the questions in detail. You have to realise that the scores of each test point in this format could lead to a huge change in the rankings.
On the eve of NOI, I couldn't stop having heart palpitations on my lunch break so often. This meant that I was overly nervous during this time, but I didn't care too much about it, and in my preparation for NOI afterwards, I seemed to have nothing to do, didn't know what I was supposed to be doing, and had no motivation to study.
But know you realize it is an urgent issue. You don't have to worry too much about your abilities or compare your abilities with others. If you have a good friend in the school/training team, just learn and progress with that person. It would be nice to have someone to share the burden with.
For training, you don't need to learn more algorithms, reinforcing your current level of understanding of the algorithm is sufficient. If you continue to care about what you don't know at this point in your life, then you'll just get more and more nervous: why I don't know anything? Just be yourself.
In terms of problem strategy, I think you have a very strong ability to solve the first problem, so you can look at the second and third problems first and write a bruteforce algorithm. Then go back and try to solve the first question, if you find it difficult, do the sub-tasks. Not only more points, but maybe it will help you discover new properties.
Child, don't worry.(Maybe I can't say that either. I'm only a little older than you) Don't take this contest too seriously. This game won't ruin your life later on.
You know, if you're tired, you can do the sports with your friends. That's really efficient to relieve stress.
I didn't win any medals, but I'm sure you could have won gold. Love from YipChip.
Ah, it’s sad that the story ended without a medal. Maybe it would be a good idea to find someone to work with. Thanks for the relaxing writing :))
Since I'm involved in the national olympiad process, I'll try to give some general suggestions as far as my observations go. (These should apply to anyone, so I would suggest everyone preparing for the contests to give it a read.)
In case of time management, my biggest suggestion would be doing as many timed olympiad contests as possible. Some people mostly prepare with Codeforces, AtCoder, and similar websites. From my observations, this can cause stamina issues as you are getting used to 2-3 hour contests instead of 5 hour ones.
In terms of olympiad-style problems, it's best to make great use of subtasks. If the problem is prepared well, they should guide you towards the actual solution. You don't have to implement every subtask since it would likely be a waste time if you full-solve the problem in the end. However, only focusing on full-solve is usually a bad idea as well unless the problem is too easy. Just thinking about the subtasks and writing short summaries of your ideas for them can be quite beneficial.
I think it's quite risky to make such strong assumptions. I'm not saying there will or won't be such kinds of problems, but since we use CMS, there are no technical obstacles preventing such problems.
What I personally do for this (which might not work for you) is to drink water when I am stressed. If I still cannot calm down, I eat some food or go to the restroom to wash my face, as these get my mind off the contest. You might think that these would waste valuable time, but you waste more time by being stressed and not working as effectively as possible.
And lastly, I would suggest giving a break on the last 2-3 days before the contest and doing something fun. Motivation is always very important.
First of all, thank you for guiding during the camp :D
I plan to solve olympiad problems in the next month. Do you know any olympiads you like and think are at a similar level? Hopefully, I’ll be able to tackle issues like concentration and problem-solving strategies during this time.
When I’m stressed, drinking water and eating snacks might actually be helpful. I usually didn’t touch my plate, as it felt like a waste of time, like you said.
I definitely think taking a break in the last 2-3 days is necessary. Honestly, I remember discussing problems and algorithms the night before the competition and minutes before it, and I became even more stressed in that environment, lol.
hi! I highly recommend writing a lot of virtual competitions (APIO, IOI, info1cup, IZhO, JOI, COCI, USACO). I can give some advice. After the competition starts, you need to read all the tasks and fully understand them. Keep track of time, don't get stuck on one task. It's important that you score more than zero points on each task. write competitions so that after the competition you can say that you did everything in your power. good luck!
as someone with the same ambitions and aims but a slightly different issue, I would like to ask my question here (I hope people would try to help me). My NOI is also in the next 1-2 months and I also wanna grind but being a specialist who can barely solve 1700s, the issue is completely different and I stand very little chance of making it through TST but I'm not giving up. Is there some resource where I can practice on the issues by the author + solve problems in difficulty order which would cover standard OI problems? should I solve past IOI problems? I gave the last easy round at UOJ.ac and I couldn't do anything. I'm really worried and this blog has just came up as a blessing for me where I can learn from the experiences of people. Thanks in advance for those who are gonna reply...
You can refer to my reply of him. When I participated in NOI, I was only 1600 on codeforces. Hope my reply could help you.
what was your practice strategy? Your reply was is very beneficial in terms of strategy in contest. Will definitely take care of those
If time is urgent, I will try to solve problems of what I'm not good at, like DP or DS. If you get frustrated, then go back to your areas of expertise. Keep a comfortable feel on these problems that causes less problems in contest. If you think your time is enough, try to learn some different insight of some algorithms you know. This may let you see different angle of problems:)
Other comments have brought up some useful contest-specific tips, so I want to focus on the psychological side. I have had similar problems in my CP journey, always underperforming severely in major national contests. I never really succeeded in this regard, but I can share my insights into this.
I will start with a potentially counterintuitive sounding comment. From what I have seen, you need to be less motivated in achieving your dream result. More specifically, being more detached from the result.
When you are less motivated, what you get is choice: the choice to work on whatever problem your conscious knows is the best option rather than let your subconscious anxiety or fear dictate your decisions. This way, the focus of the mind becomes trying to maximize the score rather than the all or nothing approach.
I also want to point out this:
Now, I cannot disprove nor prove this statement. However, what I do know is that this kind of statement will worsen your contest anxiety and reinforce your subconscious (where creativity and intuition lies) to mentally give up.
I think that for now, the best thing you can do is take it easy and focus on overall mental health. Pushing yourself too hard and burnout are very real possibilities in your case. I never realized that I was burnt out of CP training until months after I stopped my usual CP training. Currently, I am still healing from the pressure I put on myself and the comparisions I made years ago. This healing process takes time, but it is easily noticable when it works.
Hmm, when I think about focusing on the results, maybe you’re right, I might be focusing too much. Honestly, I really enjoy solving problems and seeing that green text. But I’m also afraid of losing, I mean, who isn’t, lol. In my country, if you go to the IOI and win a medal, you’ve really avoided entering a difficult and mentally exhausting exam, so I might be so focused because of that. But I’ll be more careful about this.
In my second message, I might have exaggerated a bit, but my olympiad skills are really bad compared to my Codeforces skills, lol.
I’m really afraid of experiencing burnout (maybe I’m going through it now, I have no idea). But I realized a few days ago that my mental health is bad and getting worse, and I hope I’ll recover.
Thanks for the writing, advice, and support. :P
Five hours on three problems? Pretend each subtask is a problem, then it really becomes 5 hours on 10~15 problems. Subtasks are like hints, they are there to help you and to guide you to the solution. Please don't ignore them... For example, on USACO contests, I usually get a large portion of my points from subtasks entirely.
If you're solving hard USACO Plat problems in 1.5~2 hours, you probably are good enough to do well on almost any olympiad. Just don't panic and enjoy the problems (panicking won't help you, anyway). Good luck!
Thanks :)
could anyone summarize the blog & comments please
As silly as it sounds, this actually clutched my olympiad camp selection yesterday.
If you find the tasks difficult, convince/delulu yourself that other people can’t solve them either.
Also, go to the toilet often to relax, and eat the snacks if it’s provided to you. These little things can give you a peace of mind and might allow you to rethink the strategies and the solutions.
And don’t be too fixated on AC, this can be fixed by experience, I believe.
The story:
My selection camp selects 10 people from 20 in two contest days. In the first day I got 8th place (223/300 = 100+100+23, choked the task because I was too greedy for AC). This is a pretty risky position and it is quite the pressure in the second day.
In the second day, I saw a task that I know how to solve but requires pretty extreme implementation. I spent around half of the contest trying to AC it, and I failed. Got 2/100 for my submission.
At this point, I am pretty stressed for obvious reasons. I went to the toilet, popped two gums into my mouth, and rethink my choices for the rest of the contest.
I made a few observations.
I have very low score after half the contest, 33/300.
Other than the first task that I am trying to AC, the other two is pretty hard.
And so I made a guess. More like a delusion of hope but whatever.
I don’t need to AC at all for 150. With the two hours left on the clock, I focused solely on subtasks. I also learned from the first day that being too focused on AC can be detrimental.
The wrong AC code has some correct parts which I modified and then got 62.5 on. I can get 18 more on the penultimate subtask but figured that the time is better used on the other two tasks which I have barely attempted.
I then realized that there’s actually a ton of subtasks that I should and could collect. The latter half of the contest is just implementation frenzy for me and my score rose until the very last minute of the contest.
Second day score: 62.5 + 61 + 45 = 168.5 (5th place).
Got 7th in total, which is enough for the next camp.
Congrats! Thank you for your great story and advice as well :p
I think doing 5 hour IOI style virtual contests helps a lot. That way you can get used to the duration and be more comfortable. One thing I did was to record the screen and camera during the contest and analyze it afterwards. If I did something wrong, try to find the reason and improve in the next one. Through this kind virtual contests I came up with a strategy which optimized my performance. The strategy is divided into 2 parts, first 2 hours and the last 3 hours.
First 2 hours of the contest is broken down into 3 blocks of 40 minutes which I spend reading the problem 1-3 respectively and trying to get some easy subtasks (usually 1 — 3) and familiarize myself with the problem. I would sometimes come up with some ideas for bigger subtasks during this period, but as soon as 40 minutes past I switch to the next problem. Even if I have 0 points or have some amazing idea for the latter subtask or even full. After reading all the problems and getting simple subtasks (3 hours remain), I choose a problem which seems the easiest and try to get more points on that problem. By this time usually I have some raw ideas for bigger subtask and try to polish it and get the point.
Being strict with the time management helps to not be stuck on some problem for a long time. I had an incident on IOI23 where I misread the problem A in the beginning of the contest. At 40 minutes I had 0 points on A and no idea how to solve the subtask 1. I moved to next problem and after getting points on the problem B and C, I returned to A with clearer mind and decided to reread the statement. Realizing my mistake, I only had enough time to get first few subtasks. Although the strategy does not guarantee best performance, I personally think its better for me compared to improvising during the contest.
I don't have a strict strategy for the last 3 hours of the contest. I think by doing a lot of virtual contests you can get natural feel on what is the best way to spend this time. If at some point I get hard stuck on anything, the general tips such as going to the bathroom, having some drink or a snack and just going away from the table for a minute or so usually helps. Doing this after the part 1 helps to refresh your mind as well.
In general, I think the best advice I can give is to do virtual contest. Everything else is supplementary. Good luck on the team selection test.
Yeah, I really need to try setting a time and problem-solving strategy and doing virtual contests with my friends. Honestly, on the first day of this year’s olympiad, I spent 4 hours just trying to get a full score on one problem, so I didn’t have the chance to focus on subtasks. Thanks for taking the time! :))