An advice for competitive programming

advice

#1

Hello,

By no means, am I a very successful programmer or something, if you don’t want to read it its alright and also, if you think I am not qualified to write stuff like this, I will say that it’s just personal thoughts. In a hope that I will be helping some of the people here I will continue.

So, I was selected for the IPC Camp this year. I don’t know how, I thought I won’t because of my codeforces rating. I am just a green there. Thing is the topics that were taught in the lectures mostly consisted of rare topics that bridge the gap between purple and red. Things like palindrome trees and suffix automata were taught, many people did not even understand(Except a handful who are really good programmers). They almost never appear in any short contest. Yes, some topics like geometry and maths are actually helpful for the short contests but most weren’t.

I thought maybe this wasn’t the right camp for me, but then I came to a realization that this camp was really great, teaching us so many new stuff(Isn’t that the whole goal behind organizing any camp?), the problem is with me. I am a big-time procrastinator and never practice. All I do is look at the other “How to be better in competitive programming” type of questions on quora, codeforces and codechef. Most of the times while practicing, I open a problem, think of a solution, if I think of it, I look at the editorial and see if my thinking was correct and then if I can’t, I go to the editorial read it and leave it. I almost never implement and submit because of laziness. And I realized, this way it won’t work. Just cheating myself and doing long contests more than short contests is only hampering me. Even learning new topics now is not as important as practice. If you solve till div2 D on codeforces, you are a purple/high blue. New topics are only needed for div1 C/div2 E and if you solve them fast, you have a high chance of being a yellow or red.

I was having a talk with kevinsogo the other day, I told him that this is my last try for the IOI this year and asked him about how and what I should practice. Firstly, he told me about how, he said,“You are worrying about it too much. Even I didn’t qualify for ICPC World Finals, but I don’t care, all that matters is that I enjoyed solving the problems and will continue enjoy solving problems.” I asked when to see the editorials, he said,“If you really enjoy solving problems, you will never see the editorial and ruin the joy of problem solving. And if you don;t enjoy problem solving then what’s the point of programming competitively? It’s ok to see hints or the topics that are needed to solve the problem from editorial only. But that’s just how I have practiced.” He was really inspiring to me as a competitive programmer.

To sum it up, there is really no new advice, just to the procrastinators and the skeptics, there is no way to get better without practicing; even if you learn all the topics in the world, you will never be able to apply them in problems unless you practice problems. Just take it from someone who was the second lowest rated coder in the camp.

Please do comment and tell me if something I said here was wrong, I can assure there is no wrong intent from my side.
Hope you have a good day and happy coding :slight_smile:

P.S. When I said “Short contest” I meant if you want a good ranking in the short contests, or else if you want to be among the top 10, of course topics like centroid decomposition and fft appear as div1 D or E many a times.


#2

Hey, thanks for the post. It was really inspiring.


#3

Really I also have been making the same mistake…Time to change… Thanks… :slight_smile:


#4

can anyone answer my question "how could i shift my self from beginner to another level?"stuck on the basic skills and solving problems of beginner level how could i shift my pace? i’m waiting to geta direction to solve a big level program how could i? what shhould i refer ?what should i do? please anyone help?


#5

this was really inspiring.i used to see the editorial if im stressed up but now im gonna change.ENJOY CODING


#6

Can someone give some reputation? need to upvote this post.


#7

Thanks for sharing your experience, and all the best for ZCO,INOI,IOITC and IOI :slight_smile:


#8

Thanks for such a great advice. Can you tell me how the selection process for the IPC is being carried .


#9

Very inspiring post @ista2000! Good luck for all your future competitions!
Well, I am below average in programming and can’t solve medium+ level question(most probably). Shall I keep on trying the problem and working on the problem even if I don’t have slightest of the clue? What I mean is , if I do not know what data structure to use how do I find it??

Thanks for answering in advance :slight_smile:


#10

Good share buddy.


#11

Thanks buddy !
U pointed out the problem that every programmer faces it , atleast once in the entire journey of becoming best.

  • Can u provide the links to useful tutorials that can really help me in competitive prog ?
    (Data structures book and cormen are boring for me ! :frowning: )

#12

Hey @shreyansh98, you can follow this link:

Data Structures and Algorithms


#13

Thank you for your inspiring words :slight_smile:


#14

it was really helpful for me !!


#15

I want to thank you for your words as they actually inspired me to practice more and more.


#16

that was a seriously inspiring:)


#17

Some of the lines are like mine thoughts which appear in my mind sometimes. Good to see that still i am not completely wrong.


#18

Hey, that’s a nice advice for new programmers like us. Can someone upvote this comment, I need reputation points to upvote the post!!


#19

Nice Post!!
Query- Usually how long does it take for the ratings to get reflected after COOK-OFF is over.
Thanks!


#20

Thanks for reading it :slight_smile: