Introduction to Competitive Programming

100% found this document useful (1 vote)
247 views19 pages
The document introduces competitive programming (CP), discussing why it should be done, how to start, common websites for practice and competitions, basic programming skills needed, how to s…

Uploaded by

kishore rabha
  • Introduction to Competitive Programming
  • Topics of Discussion
  • Why Should I Do CP?
  • How Do I Start Doing CP?
  • CP Websites
  • Basic Programming Skills
  • Programming Environment Setup
  • Example Programming Environment - 1
  • Example Problems on CF
  • Resources to Study From
  • Discord and CF Groups

INTRODUCTION TO

COMPETITIVE PROGRAMMING
TOPICS OF DISCUSSION

• Why Should I do CP?


• How do I start doing Competitive Programming?
• Websites for Practice and Competitions
• Basic Programming skills
• Programming Environment Setup
• Example Questions
• Resources to Study from
• Discord and CF Groups
WHY SHOULD I DO CP?

• Job Interviews expect you to solve Algorithmic Problems


• Development of Problem solving skills
• Major Competitions – ACM ICPC, Google Code Jam, FB Hacker Cup
• You can reach WORLD FINALS if you’re determined enough ;-)
• Also do CP because “It’s FUN!”
• WARNING: IT’S ADDICTIVE TOO :D
ACM ICPC
CAN YOU BEAT THIS GUY?
HOW DO I START DOING CP?

• 1. Setup a Programming Environment


• 2. Make an account on CodeChef and CodeForces
• 3. Solve basic questions on CodeForces, learn how to implement an algorithm
• 4. Start regularly taking part in Long Challenges on CodeChef
• 5. Also Participate in Short Challenges for Speed and Accuracy
• 6. Practice Questions
• 7. Learn What you don’t Know
• 8. Compete
• 9. GOTO STEP 6
CP WEBSITES

• CODEFORCES
• CODECHEF
BASIC PROGRAMMING SKILLS

To solve a problem you need to:


• Know a Programming Language
• Design an Algorithm for the Problem
• Implement the algorithm in a programming language
• Run the program and test it locally
• Run it on the Online Judge
• Debug it if it doesn’t work
• Write readable code
BASIC PROGRAMMING SKILLS

• What Programming Language should I Know?


• How do I make an algorithm? - LATER
• How do I write a simple program to implement the algorithm?
• How do I run a program?
• How do Online Judges work?
• How do I write a good readable program so that it can be debugged
easily?
PROGRAMMING ENVIRONMENT SETUP

• YOU NEED:
• AN OPERATING SYSTEM
• A TEXT EDITOR
• A COMPILER
• A WAY TO RUN THE EXECUTABLE FILES
EXAMPLE PROGRAMMING ENVIRONMENT - 1
EXAMPLE PROGRAMMING ENVIRONMENT - 2
EXAMPLE PROBLEMS ON CF
RESOURCES TO STUDY FROM

• Blogs – TOPCODER, CodeForces


• Common Lounge
• BOOKS:
• CP Handbook
• Algorithm Design Manual – Prof Skiena
• WEBSITES:
• CP-ALGORITHMS
DISCORD AND CF GROUPS
ANY QUESTIONS?
THANKS

INTRODUCTION TO 
COMPETITIVE PROGRAMMING
TOPICS OF DISCUSSION
•
Why Should I do CP?
•
How do I start doing Competitive Programming?
•
Websites for Practice and Compet
WHY SHOULD I DO CP?
•
Job Interviews expect you to solve Algorithmic Problems
•
Development of Problem solving skills
•
Major
ACM ICPC
CAN YOU BEAT THIS GUY?
HOW DO I START DOING CP?
•
1. Setup a Programming Environment
•
2. Make an account on CodeChef and CodeForces
•
3. Solve basi
CP WEBSITES
• CODEFORCES
• CODECHEF
BASIC PROGRAMMING SKILLS
To solve a problem you need to:
• Know a Programming Language
• Design an Algorithm for the Problem

You might also like