Skip to content

AIO

The Australian Informatics Olympiad is a 3-hour contest of six problems, in increasing difficulty, each worth 100 points split into subtasks. Past papers, a judge and editorials are on ORAC. From July to September we worked through nine years of papers.

Year Lesson(s) Problems Ideas that came up
AIO 2026 12 Sep Jump on Platforms, IGM, Discount Destinations, Sunday Drive II, Prime Minister, Mundane Square sliding window, two sweeps, binary search, greedy construction
AIO 2025 23 Jul, 27 Jul, 30 Jul, 23 Aug Soccer Match, Buried Treasure, Off the Track, ORAC, Pairing Cards, Robot Writing proofs of greedy choices, prefix maxima, distance + parity
AIO 2024 23 Jul, 30 Jul, 5 Aug Javelin, Subbookkeeper, Shopping Spree, Backpacking, Tennis Robot II, Twin Rivers exchange argument, small value range, jumping over repeats
AIO 2023 5 Aug TeleTrip, Distincto's Raffle, Making Bank, Shoptimality, Wheeling and Dealing, Lights sets, running minimum, heaps, XOR equations
AIO 2022 10 Aug Election II, Level Ground, TSP, Beautiful Buildings, Composing Pyramids, Spaceship Shuffle greedy, DP by value, median
AIO 2021 15 Aug Robot Vacuum, Art Class II, Melody, Social Distancing, Space Mission, Laser Cutter suffix minima + binary search, observation
AIO 2020 19 Aug Baubles, Cookies, Ghost Encounters, Tennis Robot, Ladybugs II, Beach Umbrellas binary search, sparse table, interval greedy
AIO 2019 22 Aug Vases, RPS, Hiring Monks, Medusa's Snakes, Evading Capture, Lollipops II binary search on the answer, exchange arguments, parity BFS
AIO 2018 23 Aug Street Construction, Castle Cavalry, Cloud Coverage, Janitor, Detective local maxima, incremental updates, 2-colouring

How to use the subtasks

Subtasks are hints written by the problem setters. A typical problem looks like this:

Subtask Typical rule What it rewards
1 tiny \(N\), or a special shape a brute force that is obviously correct
2–3 \(N \le 1000\), or one extra condition an \(O(N^2)\) idea, or the problem with one difficulty removed
last full limits the real algorithm

Our routine in every lesson:

  1. Read all six problems first and note the limits (Complexity & Constraints).
  2. Collect easy points: full solutions for Q1–Q3, brute force for the subtasks of the rest.
  3. Use the brute force: print its answers for small inputs and look for a pattern, and keep it to test the fast solution against.
  4. Look for the strange constraint (prices \(\le 20\), \(P_i = 0\), "the graph is a grid"): it is usually the door to the next subtask.
  5. Check long long before submitting.

Recurring ideas

Idea Where
binary search on the answer 2026 Q5, 2021 Q5, 2020 Q4, 2019 Q4, 2019 Q6
exchange argument 2024 Q3, 2025 Q4, 2025 Q5, 2019 Q2, 2019 Q3
prefix sums / sliding window 2026 Q3, 2022 Q6, 2018 Q3
"only a few things change" 2022 Q4, 2018 Q4, 2018 Q5, 2024 Q5
parity 2019 Q5, 2025 Q6, 2023 Q6

Credits & sources

AIO problems are © the Australian Mathematics Trust and are linked, not copied: every page summarises the statements in our own words and links to ORAC. All explanations and code are ours.