Skip to content

Newcomers Training Plan (2023)

Your first step into the world of competitive programming. This plan covers foundational topics to build a strong base for problem-solving.

What You Should Study

  • Week 0: Data Types & If Condition
  • Week 1: Loops
  • Week 2: Arrays
  • Week 3: Functions
  • Week 4: Strings
  • Week 5: Frequency Array
  • Week 6: Math

How is the training going?

  • Each week, a topic (ex. data types) is allocated to study.
  • There will be 2 sessions per week: one to discuss the topic and one for upsolving problems from the sheet.
  • At the end of each week, a 2-hour contest is held.

Week 1: Data Types & If Condition

Title Type Link
Topic Session Session View
Practice Session Upsolving View
Sheet #1 (Data Types & Conditions) Practice Go to Sheet

Week 2: Loops

Title Type Link
Practice Session Upsolving View
Sheet #2 (Loops) Practice Go to Sheet
Contest #0 Contest Go to Contest
Contest Upsolve Upsolving View

Week 3 & 4: Arrays & Functions

Title Type Link
Topic Session Session View
Array: Practice Session Upsolving View
Functions: Practice Session Upsolving View
Sheet #3 (Array) Practice Go to Sheet
Contest #1 Contest Go to Contest
Contest Upsolve Upsolving View

Week 5: Strings

Title Type Link
Topic Session Session View (PDF)
Practice Session Upsolving View
Sheet #4 (Strings) Practice Go to Sheet
Contest #2 Contest Go to Contest
Contest Upsolve Upsolving View

Week 6: Revision

Title Type Link
Revision Sheet #1 Practice Go to Sheet
Upsolve Sheet Video Upsolving View
Contest #3 Contest Go to Contest
Contest Upsolve Upsolving View

Week 7: Frequency Array

Title Type Link
Topic Session #1 Session View
Topic Session #2 Session View
Practice Session Upsolving View
Sheet #6 (Frequency Array) Practice Go to Sheet

Week 8: Math

Title Type Link
Topic Session Session View
Sheet #7 (Math) Practice Go to Sheet

Frequently Asked Questions

  1. What's problem solving?
    Watch this video to learn more.
  2. How to join a training group?
    View the guide here.
  3. What is a contest?
    Find out more here.
  4. How do I ask for a hint on a problem?
    • Questions should be asked in the ICPC Menofia Facebook group.
    • Do not post your code directly. Upload it to an online editor like ideone.com and share the link.
    • When asking about a problem, include the problem link, your level, and the issue you're facing (e.g., "Wrong answer on test 5", "Time limit", "Need a hint").