Skip to main content

This plan is designed for students who have some prior programming experience (e.g., Python, basic C++), are actively solving problems on platforms like CSES, Codexyz, or AtCoder, and are looking for a structured, age-appropriate roadmap. The focus is on mastering fundamental algorithms (DP, graphs, greedy), solving subtasks efficiently, and building confidence for NOI participation β€” without requiring university-level mathematics or overly advanced CS theory.

Suitable for : Secondary school students with a strong interest in competitive programming and basic proficiency in C++

Target:

1. Achieve a solid score in the NOI

2. ideally qualifying for the Final Round

3. with the stretch goal of solving 1–2 full tasks or earning a Bronze medal.

πŸ”΅ Month 1 – Foundation Building (Basics + Syntax Fluency)

Topic Resources Practice
C++ Syntax Refresh GeeksforGeeks C++, USACO Bronze intro 1–2 C++ syntax problems/week
Time Complexity + Sorting CPH Ch. 1–3, CSES Sorting & Searching ~5–6 problems/week
Prefix sums, brute force, loops CPH + USACO Bronze CSES β€œIntroductory Problems”
AtCoder ABC Do ABC Contest weekly (solve A–C) ABC 100–105
Practice Site CSES, Codexyz, AtCoder Pick familiar platforms

Weekly Targets:

  • 3–4 CSES problems

  • 1 AtCoder ABC (A–C)

  • 1 contest-style simulation (30–60 min)


πŸ”΅ Month 2 – Core Algorithms (Graphs, Greedy, Recursion)

Topic Resources Practice
Recursion, Binary Search CPH Ch. 4–6, USACO Bronze CSES + USACO Guide: Binary Search
BFS/DFS on graphs CPH Ch. 11–12 CSES Graph Algorithms (Easy)
Greedy algorithms CPH Ch. 8 CSES + AtCoder ABC greedy questions
Bit operations CPH Ch. 7 CSES bitmasking section
AtCoder ABC Continue weekly ABC 106–110

Weekly Targets:

  • 3 graph/greedy problems

  • 1 USACO Guide section

  • Start noting reusable templates (BFS, DFS)


🟠 Month 3 – Intermediate Concepts (DP, Shortest Path)

Topic Resources Practice
Dynamic Programming (0/1 Knapsack, Fibonacci) CPH Ch. 9, USACO Guide: Intro to DP CSES DP Set (start with 1–4)
Dijkstra, Shortest Paths CPH Ch. 13 CSES + GeeksforGeeks
Subset & Bitmask DP Guide to CP + USACO Silver Try “Meet in the Middle” on CSES
AtCoder ABC Weekly ABC contests ABC 111–115
NOI.sg Archive Try 2023/2022 problems Focus on subtasks

Weekly Targets:

  • 3 DP problems

  • 1–2 NOI past subtasks

  • 1 timed session (1.5 hours)


🟠 Month 4 – Advanced Problem Solving (DP2, Simulation, Ad Hoc)

Topic Resources Practice
Advanced DP (state reduction, optimization) USACO Guide: Silver DP CSES harder DP tasks
Ad hoc + simulation problems Codeforces Div 3 + AtCoder ABC Random Codeforces practice (Div 3)
Bitmask + backtracking CP3 (optional) NOI-style puzzles
NOI.sg Archive Continue with past prelim/final questions Focus on subtasks with scoring mindset

Weekly Targets:

  • 2 NOI subtasks

  • 2–3 DP/backtracking problems

  • 1 full mock contest (2 hours)


πŸ”΄ Month 5 – NOI Focused Training

Focus Area Practice
Mock NOI Problems (Full Tasks) 2–3/week (timed, 2–3 hours)
Subtask scoring strategy Train solving easier subtasks first
Weak topic review Review problem notebook: common mistakes
Debugging without IDE Simulate exam environment (g++ only, no online help)
NOI.sg Finals problems Solve at least 5–6 full questions/subtasks from past years

πŸ”΄ Month 6 – Simulation & Tuning

Focus Area Practice
Final full mock contests (2–3 rounds/week) Self-score, analyze post-contest
Rapid subtask solving Train for speed and accuracy on partial problems
Template review BFS, DFS, DP, Dijkstra β€” memorize and type quickly
Mental prep Build calm, focus, time pacing
Realistic environment Use C++ locally, avoid copy-paste, mimic NOI prelim conditions

πŸ“˜ Template for Weekly Practice (Flexible)

Day Focus
Mon Learn a concept (e.g., greedy, bitmask)
Tue Solve 2–3 problems (easy-medium)
Wed Do 1 AtCoder ABC (old) contest
Thu Review & retry missed problems
Fri Light day – debug or recap
Sat Timed contest or NOI simulation (2–3 hrs)
Sun Relax or review notebook/errors

πŸ“’ Tools to Use

  • Notebook or Notion doc: Log mistakes, tricks, patterns

  • C++ template: Set up basic macros (avoid too many, stay NOI-safe)

  • Timer: Simulate real contest stress


βœ… Final Thoughts

  • This plan stretches him without overwhelming, and aligns with his age and school level.

  • Success at NOI isn’t always about medal in year 1 β€” many top performers started with 1–2 subtasks and learned fast from experience.

  • With consistency, he can absolutely make Finals and earn a solid score.

Close Menu

Coding is so cool!

Get ready to be a coder in the future!

Future Coders

T: +65 94557106
E: [email protected]