Overview
The National Olympiad in Informatics (NOI) is Singapore's national programming competition for secondary school and junior college students. It is hosted by the NUS School of Computing, with the Centre for Nurturing Computing Excellence (CeNCE) running the competitive programming pathway. The first NOI was held in 1998, and the competition is modelled on the International Olympiad in Informatics (IOI).
NOI rewards problem solving and programming skill. Contestants write programs on their own, and the programs are judged on whether they give correct answers within the time and memory limits. The time a contestant spends writing the code does not count in the score.
NOI is also the main route into Singapore's IOI team, and the top female contestants are considered for the European Girls' Olympiad in Informatics (EGOI) team.
More competitions and olympiads in Singapore
Singapore · 3 competitions and olympiads
Who can apply
A contestant must meet one of these conditions.
Currently attends a local secondary school or junior college. This applies whatever the contestant's nationality.
Is a Singapore citizen or permanent resident living overseas and attending a school equivalent to a Singapore secondary school or junior college.
Is a Singapore citizen or permanent resident living in Singapore, is homeschooled, and is working towards a diploma at a level equivalent to a local secondary school or junior college.
Past NOI overall winners (the top four each year) and past IOI contestants cannot compete officially in the Final Contest. They may take part unofficially and are not eligible for medals or special awards. Past top female NOI contestants and past EGOI contestants can likewise take part unofficially.
Entry to the IOI or EGOI teams has a stricter rule than NOI itself: only Singapore citizens and permanent residents can be selected.
Exam pattern
NOI has two contests. Both give 5 programming tasks in 5 hours, with partial credit available through subtasks of different difficulty. Contestants may use C++ or Python 3.
| Contest | Format | 2026 date |
|---|---|---|
| Online Preliminary Contest | Online, 5 tasks in 5 hours (1300 to 1800). Schools proctor their own contestants. | 21 February 2026 |
| Final Contest | Onsite at the NUS School of Computing, 5 tasks in 5 hours (1300 to 1800), after a briefing and a one-hour practice session | 14 March 2026 |
There is also a practice period on the contest system the day before the Preliminary Contest (20 February 2026), so contestants can get used to the platform.
Syllabus
The official pages do not publish a topic list for NOI. The tasks are algorithmic programming problems in the style of the IOI. The IOI syllabus is the reference the organisers point to for the kinds of topics tested.
Marking and results
Solutions are scored for correctness and for staying within the time, memory and other limits set for each task. Only contestants who attend the Final Contest are eligible for medals.
Medals are given by rank among the N contestants who attend the Final Contest, following the IOI award boundaries (without honourable mentions).
| Medal | Approximate share |
|---|---|
| Gold | About N/12 |
| Silver | About N/6 |
| Bronze | About N/4 |
This means roughly half of the contestants present win a medal. Ties at a boundary all receive the same medal.
There are also special awards: four top contestants overall, two top secondary school contestants, four top female medallists, the youngest medallist, and school awards for the two top junior colleges and the two top secondary schools. A school needs at least three contestants in the Final Contest to qualify for a school award, and schools are ranked by the average score of their top three contestants. Individual ties are broken by task difficulty ranking.
Winners receive e-certificates rather than posted medals. Special award winners are presented their prizes at a separate ceremony held during the Asia-Pacific Informatics Olympiad (APIO).
Important dates
For the 29th NOI (2026):
14 February 2026: registration deadline
20 February 2026: contest system practice period
21 February 2026: Online Preliminary Contest
14 March 2026: Final Contest
Dates change each year, so check the competition page for the current edition.
Fees
Registration is free.
How to apply
A teacher or school representative signs up on the NOI website and enrols all interested students. Students cannot register themselves through the school route. Each contestant is registered under one category, Secondary or Junior College. Any number of students from a school can take the Online Preliminary Contest.
Contestants who are not enrolled in a local school (overseas Singaporeans and homeschoolers) can contact the NOI operations team to be considered.
After the exam
Qualification for the Final Contest is based on the Preliminary Contest. From each school and category, the top five contestants with a non-zero score above a cut-off set by the NOI committee are invited. If the school has at least one female contestant, the top female contestant is invited in addition to the top five. Qualifiers are told by email through their teachers. Female contestants who want to be considered for the EGOI team must sit the Preliminary Contest onsite at the School of Computing.
Contestants who attend the Final Contest compete for medals. The top Final Contest performers, typically all gold medallists and some silver medallists with high scores, join the IOI and EGOI training team for that year. The IOI team sends up to four contestants, chosen from this training team. Selection may also be subject to extra criteria from the Ministry of Education. The organisers also describe a path for top NOI contestants to the Asia-Pacific Informatics Olympiad (APIO) and to NUS programming training.
Preparation tips
Use the online judge platform recommended on the NOI practice page, which hosts many past and practice problem sets and can be used without logging in if you do not need automatic judging.
Test data and solution notes for past NOI problem sets are kept in a public archive linked from the practice page.
Practise partial scoring: attempting the easier subtasks of every task usually earns more than perfecting one task.
Get used to the contest system during the practice period before the Preliminary Contest.
Can students register on their own?
No. A teacher or school representative registers the students. Students outside a local school can contact the NOI operations team.
Do I need to be a Singapore citizen to enter NOI?
No. Any student at a local secondary school or junior college can enter. Citizenship or permanent residence only matters for selection to the IOI and EGOI teams.
Which programming languages can I use?
For 2026 the supported languages are C++ and Python 3.