AA Competitive Programming Platform

Love competitive programming? Start here.

Whether you're just discovering algorithms, aiming for APCS, or training for TOI / IOI — eight tiers from Level 0 to Level 7 welcome every learner who wants to get serious about competitive programming.

Why AACPOJ?

Complete 8-tier course path

From Level 0 fundamentals to Level 7 advanced — basics to IOI prep, end to end.

Teacher-curated problem sets

No more guessing what to practice — weekly assignments hand-picked by your instructor.

Built-in notes system

Write problem write-ups, organize your thinking, share with classmates. Markdown + code in one place.

Online IDE + live collab

Monaco Editor + Yjs realtime collab — pair-program assignments with classmates.

Progress in sync with class

Assignment progress, exams, and class events sync in realtime — never miss a weekly milestone.

External OJ integration

Link Codeforces, AtCoder, CSES, NCOJ, TIOJ — unify your AC record across platforms.

Course topic map by level

From zero-baseline C++ syntax to advanced contests — a tiered path so every student knows where they are and where to go next.

LEVEL 0
Level 0-1

C++ Syntax

C++ fundamentals and programming logic.

Level 0-2

C++ Implementation

Using core C++ tools / building implementation skill / first steps in performance tuning.

LEVEL 1 – 3
Level 1

Algorithms

Math in competitive programming / intro to algorithm design and optimization / intro to data structures.

Level 2

Algorithms

Core algorithms / STL containers / basic graph theory / greedy.

Level 3

Algorithms

Recursive thinking / dynamic programming.

LEVEL 4 – 7
Level 4

Algorithms

Graph theory / data structures.

Level 5

Algorithms

Problem-solving methodology / advanced algorithms and integrated techniques.

Level 6

Algorithms

Advanced algorithms and integrated techniques.

Level 7

Algorithms

Advanced algorithms and integrated techniques.

Full curriculum, contest goals, and hour breakdown: AA Competitive Programming roadmap →

Ready to begin?

Sign up to browse public problems and course intros. Classes are joined by teacher invite.