← All guides

IOI

How to start your IOI journey in Pakistan — a complete guide

WonderWhyPk Team · · 7 min read

Most students in Pakistan finish school without ever hearing the words "International Olympiad in Informatics". Not because the competition is closed to them — Pakistan sends a team most years — but because the information never travelled past a handful of schools.

This guide is the whole route, written for someone starting from zero. No prior programming. No expensive course. No connections.

What the IOI actually is

The International Olympiad in Informatics (IOI) is the world's biggest programming competition for school students. It challenges teenagers to solve logic, mathematics, and algorithm problems — and turn their ideas into fast, efficient code.

Every year, countries across the globe select their top 4 students to represent them at IOI. These young coders compete for gold, silver, and bronze medals, and a chance to prove themselves on the world stage. It is basically the Olympics of competitive programming for high school students.

IOI started in 1989, first held in Bulgaria, as part of the global scientific Olympiad movement. It has grown from 13 countries in the first edition to more than 90 today. Past IOI participants have gone on to found companies including Quora and Cognition AI, to engineering roles at Google and Meta, and to professorships and research careers worldwide.

Why it is worth your years

Scholarships and admissions. IOI medalists are actively sought by MIT, Oxford and Cambridge. Even reaching the national camp strengthens an application substantially.

Global recognition. You represent Pakistan internationally. Former participants work at Google, Meta, DeepMind and Microsoft, and found startups.

Real skill. Algorithms, logic, and efficiency, plus the mental stamina to sit with a problem that does not yield.

Lasting credibility. Being an IOI contestant carries weight in technical circles for life.

It compounds. The same preparation carries into ICPC, research, and technical interviews.

That last point is the one students underrate. Almost nobody who starts this reaches IOI — but the preparation itself is the most transferable technical training available to a school student anywhere, and it is free.

Are you eligible?

The rules are simple, and more generous than most students assume:

  • Not older than 20 on 1 July of the IOI year
  • Must not have started university before the autumn of the IOI year
  • No lower age limit

There is no minimum age. A thirteen-year-old who can solve the problems is eligible.

Upcoming editions

| Year | Host | Dates | |---|---|---| | IOI 2026 | Tashkent, Uzbekistan | 9–16 August | | IOI 2027 | Potsdam, Germany | 12–19 September | | IOI 2028 | Japan | TBA | | IOI 2029 | Bulgaria | TBA |

Dates are as announced by the IOI committee — confirm on ioinformatics.org before planning around them.

How Pakistan selects its team

Pakistan's route runs through the Pakistan Olympiad in Informatics (POI). There are four gates.

1 · Online qualifier (Round 1). Registration usually opens around November–December. The test is typically an online Codeforces-hosted contest, sat physically at official centres in major cities. Roughly 50–70 top scorers are shortlisted nationally.

2 · Advanced round (Round 2). A harder, supervised coding test, closer to IOI style. The field narrows to roughly the top 15–20. Some years a single combined round shortlists 25–30 students directly for the final.

3 · Final round and APIO. Shortlisted students take part in the Asia-Pacific Olympiad in Informatics, a prestigious competition in its own right, alongside an IOI-style final. The top 4 form the Pakistan team.

4 · IOI. The team of four represents Pakistan at the International Olympiad in Informatics.

Note what this means practically: the first gate is an online contest you can prepare for entirely from home, and roughly 50–70 students clear it. That is a much smaller number than most people expect.

What competitive programming actually is

Competitive programming is a mind-sport: you solve hard logic and mathematics problems with code, usually inside one to five hours. Instead of athletic strength you use algorithms, reasoning, and speed.

Typical problems: check whether a very large number is prime; find the shortest route between two cities; given N students and their friendships, count the friend groups.

These need logical thinking, mathematical patterns, algorithmic technique, and clean fast code. This is not app or website building. It is pure problem solving.

If you have been building websites and wondering why it does not feel like this — it is because they are different skills. Neither is better. They are just not the same thing.

Starting from zero

Step 0 · Find your why

Programming is hard. You will be stuck, confused and frustrated; that is the job, not a sign you are unsuited to it. What decides the outcome is grit, not genius.

Strong reasons: represent Pakistan at IOI, earn a scholarship to MIT or KAIST, love solving logic puzzles, build a future in tech. Write your reason somewhere you will see it.

Weak purpose dies at the first bug. Strong purpose turns bugs into fuel.

Step 1 · Hardware and software

Any laptop or desktop with internet. Linux is convenient; Windows and macOS are entirely fine.

You need an editor (VS Code, Sublime Text or Vim), a C++ compiler (g++ / MinGW), and a terminal.

No machine of your own? OnlineGDB and Replit run in the browser. Students have reached national rounds working from a shared school computer.

Step 2 · Learn C++ basics

C++ is the language used at IOI, runs roughly 30× faster than Python, and is what over 90% of competitive programmers use, so tutorials and solutions are written for it.

Start with syntax, variables and types, cin/cout, loops, conditionals, functions, arrays.

Free resources: w3schools.com and the Apna College C++ playlist on YouTube.

You do not need to finish a whole course before starting Step 3. Learn loops and arrays, then start solving. The problems will teach you the rest.

Step 3 · Start solving on Codeforces

Register at codeforces.com and begin with 800-rated problems: input/output, loops, arrays, strings, basic maths.

Enter rated contests weekly — they are measurements, not exams. Your rating is a thermometer, not a verdict.

Do not use AI, and do not read solutions from YouTube or blogs, while practising. Struggling and retrying is the mechanism by which this skill is built. Using AI during a contest is like driving a car to train for a marathon.

This is the single most common way Pakistani students stall. They solve two hundred problems with help and cannot solve a new one alone. Sit with the problem. Half an hour of being stuck is doing the work.

Step 4 · Climb the rating ladder

| Rating | Rank | What you should be comfortable with | |---|---|---| | < 1200 | Newbie | I/O, arrays, strings, simple loops | | 1200–1399 | Pupil | Sorting, binary search, basic maths, brute force | | 1400–1599 | Specialist | Greedy, basic DP, BFS/DFS | | 1600–1899 | Expert | Advanced DP, segment trees, harder graphs | | 1900–2099 | Candidate Master | Advanced data structures, flows, number theory | | 2100–2299 | Master | IOI-competitive | | 2300+ | International Master / Grandmaster | Elite |

Specialist is realistically enough to clear Pakistan's first round. Expert puts you in contention for the camp.

What to avoid

  • Using AI or reading editorials while practising. Covered above, and worth repeating: it is the difference between people who improve and people who do not.
  • Language-hopping. Pick C++ and stay.
  • Collecting resources instead of solving problems. Ten problems solved beats fifty tutorials watched.
  • Treating rating drops as failure. Ratings fall. Everyone's do.
  • Waiting until you "know enough" to enter a contest. Enter now, at any level.

Practice and reference

Practice: Codeforces · CSES Problem Set · USACO Guide · AtCoder · LeetCode · HackerRank · SPOJ · CodeChef · Codeforces EDU

Reference: CP-Algorithms · Competitive Programmer's Handbook (free PDF) · IOI preparation guide

YouTube: Algorithms with Shayan

If you want one structured path rather than a list: work through the USACO Guide from Bronze, and solve the CSES Problem Set alongside it. That combination covers everything the national rounds ask for.

Start this week

Register a Codeforces account. Solve one 800-rated problem. Enter the next Div. 4 round, whatever your level.

That is the whole first step. The students who reach the national camp are not the ones who planned the most carefully — they are the ones who started earliest and kept going after the first contest went badly.

Get the roadmap and the alerts

Registration is free. You get competition alerts, the full roadmap, and twelve olympiad books.

Register free