You are not logged in. Please login at www.codechef.com to post your questions!

×

What are things I should know before my 1st Contest?

I am nervous. I have not solved any competitive Programming Problems yet.

asked 21 Apr, 11:09

newone123's gravatar image

0★newone123
754
accept rate: 0%


Preparation before Programming Contest -

No matter how many algorithms you know, the major part of your success in competitive programming will depend on how much you do practice.

The more you practice problems, you will be able to solve those faster in competitions. But, if you practice specific kind of problems, you will only be able to solve those kind of problems. So, never ever stop learning new algorithms.

First of all go and solve the first problem(The Life, the Universe and Everything). If you can solve it then you are ready for the next one and the next and so on. They are all beginner CP problems and don’t require and prerequisites. They are very easy. Make sure you pass a problem and then go to the next. You can skip some in the middle. Once you are comfortable with beginner problems you can go to the easy section.

Next on you need to start with hard problems. For this you will need to learn about C++ STL. You need to learn about using vectors and queues. Also you need to learn about sorting and searching techniques. After that you are already an intermediate programmer.

After that all you need is just Practice and Patience. Get your WPM typing skills over 120wpm, or as close as you can. Speed matters.

Believe me it will be hard. If it were easy everyone would do it. Don't lose hope if your solution didn't pass the first time. Go through the editorials, see others' solutions and don't leave the problem until you have come up with a solution that passes.

Things to do before Programming Contest -

1) Have a long sleep before the contest.

2) Do not eat too much (try not to eat at least 1 hour before contest)

3) Make sure your environment is clean.

4) Make sure to have one pair of noise protection ear plugs.

5) Prepare pencil and lots of blank paper.

6) Make sure you have a bottle of water near you.

link

answered 21 Apr, 11:29

rohit_jere_rj's gravatar image

1★rohit_jere_rj
4547
accept rate: 12%

I will surely follow your advice.

(21 Apr, 11:45) newone1230★
1

Good Luck!

(21 Apr, 12:20) rohit_jere_rj1★

Thank you. You have been helping me quiet alot in these past few days.

(21 Apr, 12:36) newone1230★

Np. Bro. Everyone is here to help.

(21 Apr, 13:20) rohit_jere_rj1★

Make sure you practice at least for a month!

(21 Apr, 18:12) rohit_jere_rj1★

without any much thinking , just sit in live contests , just to get a feel of it and then go to the process of learning int the step-by-step manner.

Step 1: Identify your weaknesses.

There are two main types of weaknesses.

Algorithm weaknesses. (you don't know the solution to this problem.)
Implementation weaknesses. (ypu know the solution, but you can't code it, or you spend way too much time coding it.)

The first weakness is probably the one you'll confront most often - you spend an hour looking at a problem and still have no idea how to do it. This is why you want to work on problems where you can look up a solution if you get stuck on it for too long.

The second weakness will sometimes appear if you learn from people who are much more experienced than you in competitive programming. Step 2: Shore up your weaknesses.

The only way you can fix your weaknesses is to address them directly. You're not magically going to get better at implementing advanced data structures if you don't actually try to implement them. Similarly, you're not going to learn algorithms magically without actually trying to work on problems that require them in the solution.

When addressing algorithmic weaknesses, you should spend around an hour working on a problem before giving up and looking at the solution. However, you should only look at a description of the solution, not a program that solves it. Your next job should be to implement it (this will implicitly avoid having implementation weaknesses manifest themselves).

When addressing implementation weaknesses, focus on implementing the solution correctly. Ignore speed completely - try your hardest to get it right on your first try. After you have a correct solution, look up other correct solutions and compare them. See if you can improve your implementation.

Step 3: Repeat steps 1 and 2.

link

answered 21 Apr, 11:49

marshal_roxx's gravatar image

3★marshal_roxx
3756
accept rate: 4%

Nice Summary!

(21 Apr, 14:37) rohit_jere_rj1★
1

appreciated buddy

(21 Apr, 19:34) marshal_roxx3★

'I have not solved any competitive Programming Problems yet'. I think that you should practice some problems before your 1st contest. You atleast need to know the format and how the online judge works. If it is too late to practice because your contest is just starting then make sure to practice after the contest.

link

answered 21 Apr, 14:43

mathecodician's gravatar image

5★mathecodician
1.7k214
accept rate: 8%

toggle preview

Follow this question

By Email:

Once you sign in you will be able to subscribe for any updates here

By RSS:

Answers

Answers and Comments

Markdown Basics

  • *italic* or _italic_
  • **bold** or __bold__
  • link:[text](http://url.com/ "title")
  • image?![alt text](/path/img.jpg "title")
  • numbered list: 1. Foo 2. Bar
  • to add a line break simply add two spaces to where you would like the new line to be.
  • basic HTML tags are also supported
  • mathemetical formulas in Latex between $ symbol

Tags:

×1,228
×419

Asked: 21 Apr, 11:09

Seen: 210 times

Last updated: 21 Apr, 19:34