How to start Competitive Programming?

How to start Competitive Programming?


So you want to start with competitive programming! Why? I believe that question is important to ask. I believe that once you ask yourself that question, you’ll find it much easier to commit yourself. So ask yourself – why competitive programming? Your answer probably lies amongst one of these two: The first one is that I want to get better at algorithms. I want to do well in contests, because I enjoy programming and competitive programming is what I like. The second one is that you have your interview schedule and you need to get better at algorithms and data structures. The most efficient way that you find to do this, is to compete with other human beings all around the world and that is competitive programming. So if you have one of these two goals, you’ve come to the right place! This channel is designed to talk about algorithms, data structures, coding practices and computer science core concepts, so that you get a holistic view of what aptitude tests are. Competitive programming is like a sport. It’s a mind sport. So, when instead of using your body, you’re using algorithms and you’re using your coding practices to do well. The better you are at these two, the better you’ll do in contests. Now like in any sport, it does have some prerequisites and it also has some rules that you need to know about. Prerequisites for competitive programming are – as you can guess programming. You need to know about that. But since you’ll come here, I’m going to assume that you do know about it and you need to know a little bit about algorithms. So, that’s what this channel is here for. So, if you are here again, that’s taken care of. Now, what about the rules ? In general a programming contest goes this way : We participate in the contest. We choose a problem to solve. This problem will have its own input constraints. It will also have its own input parameters. You need to give the specified output for this problem. After figuring out an algorithm to actually solve this problem, we make a submission to the online judge and this submission, may be accepted or rejected. There’s quite a few ways in which your submission can get rejected. But if it gets accepted, you get points. If you make the maximum number of successful submissions, you win the contest, and that’s what competitive programming basically is. Now. I am a young software developer, I learn things through different sources. And one thing that I try to do, all the time, is condense that information, and make it as easily consumable by you guys. Why do I do it? Because I just enjoy it. You might be wondering – is competitive programming really necessary? And, the answer to that is, No. It’s not. You can still learn algorithm and data structures by yourself. But, this is one of the most efficient ways in which you can do so. So if you want to give it a try hit the subscribe button, and I’ll see you next time!

100 thoughts to “How to start Competitive Programming?”

  1. Awesome video but can you please help me with dynamic programming its really hard to wrap my head around it . Thanks in advance ๐Ÿ™‚

  2. I subscribed initially because I was in the second category. Decided to stay even after because now I am in the first category. Thanks for the motivation!

  3. Already subscribed, when is the next time? Are you going to start a new series or you will continue to upload as usual?

  4. Gaurav I wanted to ask a general question about CP. During preparation how long do you think someone should struggle with a problem before looking at the editorial? How long should someone struggle before giving up and looking at the solution?

  5. Somehow I feel the questions are not about algorithms anymore. They are just Maths or greedy ! Cant really understand where solving 100s of greedy problems will take you ๐Ÿ™

  6. Awesome bro.. I too need some guidance on CP .. how to start and where to start ..
    I am a beginner and learning C++

  7. Can u tell me some sources apart from your video lessons, where I can learn and understand data structures.

  8. Hi Gaurav, I just came here to your channel. Nice Content btw. But I suggest you start with DS+Algo topic wise because that would guide most of the viewers. I feel this is the main problem esp. in India because there is increased demand and talent shortages. Students really don't know where to get started and where to apply what all is taught in college or is self learnt.

  9. If you want to get started with DS or Algo I would highly recommend Abdul Bari's YouTube channel. He has amazing Content. ๐Ÿ™‚

  10. are you coming up with new competitive programming series algorithms or will continue your system design lectures .

  11. It was fun to solve easy problems as they take 10 minutes max….and medium are also fun as they take around 30 minutes or something like that but hard problems take 2-3 hours and sometimes you cant even find the solution yourself thats very boring…..but the expert level algorithms like sudoku solver or a game design these are the most fun part ever…but they take 2-3 days of thinking while your in college ,bus ride , eating ,taking a shower , these will give you the kick of your life but it takes 3-4 months to get there…..

  12. i really like coding, and i want to do more stuff with it rather than basic school stuff, but where do i start where do i learn ?

  13. Hey Gaurav, So what I struggle with problem solving is I some tend to miss one of those cases of input that ruins my entire code.
    Any suggestions with that?

  14. i have been doing competitive programming for 6 months.
    right i am doing programming in c language at codechef .I like doing cp(competitive programming).
    I want to start it in c++(as you said c++ is best for cp).
    Can you suggest that how can i learn c++ for cp and otherwise also at its best.??
    Thank you.

  15. Hello Sir, I would like you to discuss the approaches of all the problems (after the event) codechef long challenge.Also tell hpw to handle numbers like 10 power 12 having powers of 10 power 12. (Aug 18 long que)

  16. Sachin Bhandari:
    I have just learned data structures and their basic operation(stack,array,queue,tree,graphs) now how to start competitve progrmming.?
    Should I start algos now? And what else should I know? Like numbers theory.i m totally I newbie.how to start from beginner level?

    I am a newbie, facing problems to solve code chef problem s bcz there questions use algorithm even in beginner section.

    Hacker rank is a good site bcz I can get question on data structures on topic wise but questions are based on basic operation like (pop,push,deletion,insertion,preorder etc) and if I solve hackerearth problems they are seeming tough

  17. Hi Gaurav…Just wanted to ask one thing…Can you tell me the pattern of Interview of this Product based companies…some ask DS Algos, some ask language in depth skills and also technologies(i.e kafka, cassandra) that you have used in current product(which you have worked on) that too in depth. Very confused what to prepare as we are not aware of which company will ask what, we just know 2-3 tecnical rounds we need to face.

  18. Though I am not from the background of science. But I really have a likings on the computer science. So i would like to know about whether any chances to be a software developer or a good coder by learning without a science background. And if yes, then what are sources I should go for.
    Thanks Gaurav.

  19. For sake of enjoyment, this could be done by senior professionals and with a goal to get better and faster in algorithms. At any level this should not be done at the cost of your job assignment.

  20. Bhaiya,pls suggeat some imp data structures and algorithm for competitive programming so that i can solve questions at beginner level.

  21. Hey, i have completed your playlist programming for begginers (it was great !!). Now which playlist of yours should i start with next ?!

  22. I use python for cp but I could not find equivalent of #indef ONLINE_JUDGE in python as without this the code shows error in codechef but in sublime it runs.

  23. Sir u want to directly contact to you , i have a great/huge love with programming in java and i think a good knowledge of algorithms of my level (11th isc) sir i want to talk to you , if you get through this message pls reply…

  24. Too high strung. Programming is a happy place for me. A relief. It is like drawing, painting and listening to all my favorite songs.

  25. can a student from different branch in a tier2 eng college pratice comp. coding and get a decent package say 8lpa+ after 4years?

  26. Thanks a lot Gaurav for your good work , I am a third semester computer science student and haven't studied "data structures and algorithms" yet so can I start competitive programming or I should go with in-depth studying of data structures and algos?

  27. Q) Why you want to start competitive programming?

    Me: YouTube algorithm throw me this suggestion, and I thought it would be interesting.

  28. Hey Gaurav, thanx for your great YT Channel ๐Ÿ™‚ I've started programming in the age of 8 (I'm 37 now!). I had a "programmer's break" the last 10 years, where I worked only on a few smaller projects. Your channel helped me to get in touch again with this "old love" and catch up this long phase of continious learning. To become a good programmer, you need much more than just knowing the language. You're doing a great job in explaining complex things in an easy way. Please continue! Thx

  29. yo Gaurav , thanks for your vidoes bro. i am final year computer science now. i started competitive programming exactly after this video. now i got a job through a hackathon and the package is pretty good for a fresher. Once again thanks bro ๐Ÿ˜๐Ÿ™

  30. Ok so here's my answer why I wanna get good at it first I am very competitive so I don't like losing, second it's really fun tbh, third its a skill that pays you a lot and with that pay I can do cocaine and hookers. So in short cause, I wanna do Cocaine and hookers I am learning competitive programming.

Leave a Reply

Your email address will not be published. Required fields are marked *