Блог пользователя pkpawan

Автор pkpawan, история, 4 года назад, По-английски

During contest I really get nervous and I lost my concentration and the two main reasons which I find for that are :-
1. Getting WA on solution I submit
2. Seeing the leaderboad with thousands of submission and I am not able to figure out the solution of that question

  • The following reasons lead to silly mistakes or mistakes which you generally don't do ( i.e. missing the constraints of question etc)

  • In the last contest #Codeforces round 694 Div 2 due to silly mistakes I got wrong answer on Problem A ( System test Failed ) and WA on Problem B.

Here are my solution with WA and AC :-
1. Problem A which failed system test ( https://codeforces.me/contest/1471/submission/103419176 )
2. Problem A which got AC ( https://codeforces.me/contest/1471/submission/103465431 )

  • The mistake I did here is I forgot the constrains of 'x'
  1. Problem B which got WA ( https://codeforces.me/contest/1471/submission/103431767 )
  2. Problem B which got AC ( https://codeforces.me/contest/1471/submission/103464987 )
  • This is one the most silly mistake that I did in the following condition ( if( P[i].first % x) ) is I use '2' in place of 'x' as , in hurry I considered the sample case with x=2 ( I don't know how can I do so ).

  • Comedy part is I just solved problem C too which I was not able to come up with solution during contest .

I want suggestions on How to tackle these problems of anxiety and be more focused and concentrated during contest ??

  • Проголосовать: нравится
  • +47
  • Проголосовать: не нравится

»
4 года назад, # |
  Проголосовать: нравится +29 Проголосовать: не нравится

Try some virtual contests. When you give some contest virtually, take it as if you are giving an actual contest.

  • »
    »
    4 года назад, # ^ |
      Проголосовать: нравится +13 Проголосовать: не нравится

    Ok I will try that but in virtual contest there is no pressure of rating changes so sometimes seriousness is missing . That's why I didn't try much of virtual contest . But surely I will frorm now onwards .

»
4 года назад, # |
  Проголосовать: нравится +3 Проголосовать: не нравится

i am not the best person to give any suggestions but giving more virtual round will surely help also note down these mistakes

»
4 года назад, # |
  Проголосовать: нравится +8 Проголосовать: не нравится

I have given 140+ contest only in codeforces, still I lose my shit at every contest. If someone has a way out , please share it.

»
4 года назад, # |
Rev. 4   Проголосовать: нравится +37 Проголосовать: не нравится

So this is something I used to get annoyed with — even now sometimes I deviate from my (following) rules and get nervous and screw up something — especially when I can change color if I do well in the constest. So the things I usually do to mitigate this mid-contest crisis is as follows:

  1. Cease to believe ratings exist: Well, its very weird, but I just tell myself ratings don't exist, and I made a short cut just to the contest page/problemset page so that when I open codeforces, I don't see my rating or any other person's rating — atleast for a couple of weeks before my target contest. This way I hope to slowly forget that rating, the carrot for the metaphorical donkey, doesn't exist — and this helps me focus solely on enjoying problem solving.

  2. Refrain from looking at the standings and number of people solved/current score per problem (In the "problems" section of the contest) during the contest: To do this, the moment I enter the contest, I try to open the "submit" page in an alternate tab and complete problemset in the current tab. This way you can solve in isolation, be rid of any distractions in contest.

  3. Finally, no one can help you if you keep thinking about how fast you solve. I suggest you forget time and just solve until you think you've solved the problem with the required correctness. As time goes along, you should be able to get speed automatically. Of course, it helps if you can move quickly (as in type fast — learn to touch type, change pages fast, think fast) in general — make it a habit during practice, so that in a contest time isn't an issue you think about.

The reasons I do this is because rating and standings and score of a problem etc. aren't something that you can control. All you can control is how you approach the problem in front of you, how you think creatively/smartly to solve the problem etc. Doing what you can control rather than focus on ramifications or things that you can physically and mentally alter will hopefully bring the best out of you. Hope this finds you well!

  • »
    »
    4 года назад, # ^ |
    Rev. 2   Проголосовать: нравится +2 Проголосовать: не нравится

    I always try to but somehow when switching problems I came across that and sometimes that curiosity of knowing where you stand in contest lead me to check my standing :(. That's a good option to open all question at once and their submition tab in parallel .I will apply that .

  • »
    »
    4 года назад, # ^ |
      Проголосовать: нравится +11 Проголосовать: не нравится

    Those are some real helpful tips there. However, I think looking at the 'solved' count for a problem during contests is sometimes helpful,

    1) to gauge its difficulty (say you're stuck on C with a really complex approach that you're unsure of, while there are a lot of solves for it. Are you thinking in the right direction?), and

    2) especially when the problem difficulty gradient is not what was expected (say for example, problem E turned out to be actually easier than D). Helps you strategically attack your problems :)

    • »
      »
      »
      4 года назад, # ^ |
      Rev. 2   Проголосовать: нравится +11 Проголосовать: не нравится

      I agree, I used to do that earlier — but for me the downside of having distractions outweighs such a strategy — its just personal preference I guess. So in case, say D is easier than C, I won't directly figure that out using solve count. I usually keep a cutoff of 10-15 min for each problem. If don't get any idea, I just go onto the next problem. In fact for me, it happens quite frequently that I get a "harder" problem than an easier problem — especially if the harder problems are math based or graph based. A casual glance at a higher problem in that sense works for me. In fact I actually don't see any problem with what I'm doing because, eventually, if I do end up solving the next problem, I'll come back to this one and I now have a headstart. Rating is only affected if I don't solve lower ranked harder problem eventually — but its a choice I can live with.

      • »
        »
        »
        »
        4 года назад, # ^ |
          Проголосовать: нравится 0 Проголосовать: не нравится

        Fair point — it has its pros and cons, and with an alternate strategy (like yours) one can disregard it. It's up to personal preference.

  • »
    »
    4 года назад, # ^ |
      Проголосовать: нравится 0 Проголосовать: не нравится

    can you please tell us about the shortcut that you use , just to contest page and problem set?

  • »
    »
    4 года назад, # ^ |
      Проголосовать: нравится 0 Проголосовать: не нравится

    I think what you mentioned here is a nice approach. I too faced a similar issue in the last few weeks where I frequently missed B in contests.

    The first way I dealt with it in contest was frequently switching problems(in 20 min spans) to think about. I remember a few where this either helped me get my B at the end, or instead helping me get a D(which I never would have got otherwise).

    The second internalizing that the probability that I will end up being my absolute best is very slim(< 10%), and there is something or the other that I end up screwing and could have done better. When I can't solve the problem, it becomes easy to accept that as a part of giving contests-the random mess-up that you do at times.

    Out of contest to deal with this I changed my practice style. Instead of only solving problems above my level(which also exhausted me a lot), I started tracking my time-to-solve for different rated easier problems and did only 1 problem above my current max rating each day. Nowadays I give kind of a semi-virtual contest where I pick questions from different rating ranges I would ideally end up doing in an actual contest and monitor my time-to-solves(trying to minimize the average eventually).

    Don't know whether I improved due to this or it is just a co-incidence that I did. Added this here since it is in some ways different to what you did and similar to svince. Will try your approach too when I get into this again.

  • »
    »
    4 года назад, # ^ |
      Проголосовать: нравится 0 Проголосовать: не нравится

    I think your method is really wonderful! I usually make a plan (or some expectation) before the contest, for instance, I tell myself that I should solve at least until problem C and then I could check the standings. While if I get stuck in some problem which is out of my expectation, I will check the number of AC as well, since I have to determine whether this is somehow a more difficult problem.

»
4 года назад, # |
Rev. 2   Проголосовать: нравится 0 Проголосовать: не нравится

I think for both of your reasons you gave above, you just need to accept that you are still suck and move on. Don't get me wrong. I do have that problem that you made (but without the part you called anxiety), even in some recent contests, and I know I'm suck too. Knowing myself suck is one of the signs that I still need to learn more and become stronger. So just accept that and keep practicing.

Making WA with those silly mistake is actually normal. If you know that your solution is 100% correct, then the only reason for making WA are just bugs in the code. So just be calm and find the bug.

Experiences actually help for debugging, and I believe this can be developed. For example, after A, you can see that one reasons for making the bug is the constraints mistake you mentions above, therefore for the other problems you should also check that too.

»
4 года назад, # |
Rev. 9   Проголосовать: нравится -24 Проголосовать: не нравится

Downvote after you report these cheaters proof.

»
4 года назад, # |
  Проголосовать: нравится +3 Проголосовать: не нравится

Don't worry about that, after giving some contest your subconscious mind will automatically adapt to tackle the in-contest pressure.

»
4 года назад, # |
  Проголосовать: нравится +5 Проголосовать: не нравится

It's not a pretty answer, but I think as long as you keep persevering and participating in the contests (not virtual, since it's the rank that affects you i think), you'll only improve. Think of it this way, every single time you're stuck at a problem that loads of people have solved and you just can't, you'll panic. But every subsequent time that happens, your brain has dealt with that situation before, and it only gets more experienced with time. It's the psychological aspect of competitive programming, and some people would recommend you to thus not focus on that and just focus on your own capabilities (which isn't a wrong idea at all, it's a very wise decision), but if you're looking to compete for the top spots, this is something you're going to have to conquer. And it can only be helped by putting yourself in that situation over and over so that the next time it happens, your brain knows how to stay composed.

»
4 года назад, # |
  Проголосовать: нравится +9 Проголосовать: не нравится

One should start focussing on their ratings only after one has very good grasp upon the basics, most beginners are so obsessed about their ratings that they forget to learn/enjoy this beautiful mind sport.If you are prepared enough your ratings would grow naturally, while giving a contest your target should be to explore most of the problems, generally problems from A to C can be solved easily if you keep playing with them for some time and observe some things.But at that time if instead of thinking about the problem your focus is diverted towards the leaderboards then that would be the end of the story. And you are talking about thousands of people solving some problem at which you are stuck, well as evident from recent incidents many people cheat, on which you can't do much.

»
4 года назад, # |
  Проголосовать: нравится +15 Проголосовать: не нравится

This is a very common problem which everyone is going through (including me).
The way I deal with this is :

  1. Looking at leaderboard and your rank in the contest affects your mindset greatly, for example if your rank is too bad then you might get demotivated or if your rank is too good then sometimes you might think that you have enough positive delta for today and don't put much effort. Also seeing your friends performance in the contest might affect you. So just don't look at leaderboard until end of contest. This does not have any downside let alone any benefits.

  2. Change the way you look at contest. Instead of seeing it as a set of 5 or 6 questions to solve, handle one question at a time. Pick a question and give your best to solve that question instead of thinking and worrying about multiple questions and not being able to solve any of them. Any task can be solved by breaking it into multiple smaller tasks.

  3. This point is not beneficial for everyone and in every contest but works most of the time. I try not to look at the number of submissions of the problems because sometimes i can solve a question if i try but seeing 100 or 200 submissions makes me think that it is just too hard for my caliber. Though this would not work in case of unbalanced problemsets.

These are just my opinions. Let me know what others think about them.

»
4 года назад, # |
  Проголосовать: нравится -26 Проголосовать: не нравится

just see my graph , i never get negative ratings , which comes through only and only practice,

  • »
    »
    4 года назад, # ^ |
      Проголосовать: нравится +11 Проголосовать: не нравится

    To be very honest and blunt, the only reason you haven't had negative ratings till now is because your rating hasn't converged under the new rating system as of now. By the law of averages, it is impossible to get a +ve delta in every contest

    • »
      »
      »
      4 года назад, # ^ |
        Проголосовать: нравится 0 Проголосовать: не нравится

      i couldn't get you what you told , my english is weak but if there is a suggestion then i want to hear in simple sentences may it will help me to improve

      • »
        »
        »
        »
        4 года назад, # ^ |
        Rev. 2   Проголосовать: нравится 0 Проголосовать: не нравится

        In simple terms, there has been a change in rating calculation
        Since your account is new, your rating is yet to converge. A few contests later, you will start seeing negative deltas too.

        • »
          »
          »
          »
          »
          4 года назад, # ^ |
            Проголосовать: нравится 0 Проголосовать: не нравится

          lets see in today contest

          • »
            »
            »
            »
            »
            »
            4 года назад, # ^ |
              Проголосовать: нравится +1 Проголосовать: не нравится

            Your (over?) confidence surprises me. Even tourist drops rating at times. That is how the law of averages works. You can't simply keep going up every time.

            If you look at the link given in the above comment, you will see that you were supposed to get a +500 in the contest, but you got only +447, meaning a drop of 53.

»
4 года назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится

stop seeing the standings during the contest and don't hurry during the contest try questions do as slowly as possible

»
4 года назад, # |
Rev. 2   Проголосовать: нравится +1 Проголосовать: не нравится

[i am no expert but just a piece of advice if you want to take] Above are some really good advises. But one which is not mentioned is participating in a lots of contests. That way you won't have much fear of losing as you would have already won/lost quite good number of times already. Like, if someday you are in mid-contest and you know this is gonna result in really bad rating then also you won't get stressed up because till that point you would have already seen your best performances and performances worse than current.

»
4 года назад, # |
  Проголосовать: нравится +3 Проголосовать: не нравится

There are few points that i would like to mention: 1.Don't worry about ratings too much during contest it only leads to bad performance, just try to enjoy it and then you will definitely able to perform better. 2.stop seeing leaderboard frequently, set some timer like 30,40 minutes after that only you check the leaderboard. 3.Most important point- I also feel anxiety whenever i got the wrong answer but to overcome this you should remain keep and calm during the contest, don't worry about the numbers of accepted submissions on the problem just try to debug your code. write some test cases on your own, try to write the code again if your code looks messy(tourist said that whenever you got wrong answer rewrite you code and have faith in yourself). 4.check the constraints properly and try to reach the solution stepwise. 5.To improve all the above points give some virtual contests seriously and after the contest check if your ratings will increase or decrease by seeing the rating changes of someone who have a rating and rank close to you, by that you can predict your performance. These are the few points that i follow ..... i hope it will help some of you :)

»
4 года назад, # |
  Проголосовать: нравится +3 Проголосовать: не нравится

Everyone face anxiety but you have to make sure you do not submit wrong answer until you test your solution properly . Since we are running against time here so you have to improve your debugging technique but finding a loophole in your solution quickly and also finding a suitable test case for which your solution does not work . Most of the time those test cases are the corner cases . So look for corner cases quickly . Best of luck !

»
4 года назад, # |
Rev. 2   Проголосовать: нравится +3 Проголосовать: не нравится

It happened to me too. There was one contest where I forgot to print new line on an edge case and consequently got the problem wrong. There was another contest where I failed system tests because I did int rather than long long. THis most recent contest I submitted my solution to D in the "C solution slot", consequently making me go from gaining 49 rating to losing 5 (thankfully, some people failed system tests, so I did get a positive delta). In another contest, in an edge case I returned -1 rather than m, consequently making me get the problem wrong after system tests. In the past two contests, I had the right solution to the problems, but I ran out of time to fix some implementation errors.

I have two questions:

1) I make a lot of silly mistakes under pressure, how to alleviate them?

2) How to get fast at solving problems while simultaneously building on problem-solving skills? I understand solving a bunch of lowly rated problems may help, but I do find the joy in CP in solving hard problems.

»
4 года назад, # |
Rev. 2   Проголосовать: нравится 0 Проголосовать: не нравится

Cool down and say that's a easy problem. I always underestimate myself during the contests, but just keep cool and ignore other participants helped me to get an idea. And the most important thing is to practice, try virtual participate.

»
4 года назад, # |
  Проголосовать: нравится +6 Проголосовать: не нравится

I used to have that problem too and I know how it feels. To fix it, I stopped looking at the friends standings tab, and I internalized the fact that it's okay if I drop rating. Remember that you can always get back your rating, even if you drop 200 in one contest.

I didn't actually stop thinking about rating. Everyone says that (including past me) but it's really hard and also not that necessary, you just have to come to terms with the possibility of being a rank lower after the contest.

It's especially important for you to remember this if you are doing poorly in the middle of a contest and anxiety is hindering you from doing the rest of the problems. In the latest Div. 1 (#694), I solved A pretty slowly and got stuck on problem B with 3 runtime errors. Normally, I would go out of my mind and probably end up giving up, but I thought "I might drop 100 after this, and that's okay.". I chilled out, and went on to solve A-D and ended up with +76 and launched to IM. Literally my best contest performance so far just because I chilled out.

Something worth noting about the friends standings tab is that after you look at it you think "Oh, all of these people have solved this and everyone's passing me, I should be able to solve this as well.". This puts more pressure on you. However, it's also sometimes good to look at solve counts, so that you know if a problem is solvable or not. For this, your best alternative is the problems tab. It still puts pressure on you but at least you don't get to label whoever is in front of you with handles and performance ratings, which I've found to be very beneficial.

Another thing worth talking about is doing virtuals. In my experience, doing virtuals doesn't help the contest anxiety because you are aware that it's a virtual. However, doing virtuals will make you better at not doing off-by-one errors (like overflow or out of bounds) under time pressure.

»
3 года назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится

Listen to anime openings.