|Date:||Saturday, 18 March 2017|
|Venue:||Programming Labs, Block COM1, School of Computing, NUS|
|0730:||Registration||Seminar Room 1, COM1|
|0815:||Briefing||Seminar Room 1, COM1|
|0900:||Start of NOI competition||Programming Labs, COM1|
|1400:||End of NOI competition.||Programming Labs, COM1|
|1400:||Lunch will be provided to all contestants||Basement foyer|
|1445:||Visit to Garena (Transport will be provided.)||One-North|
|1715:||Return to SoC from Garena (Transport will be provided.)||Seminar Room 1, COM1|
|1800:||Award Ceremony||Seminar Room 1, COM1|
|1900:||Dinner for all attendees||Seminar Room 1, foyer|
The top four overal winners will each get a 42mm Apple Watch Sport. One more 38mm Apple Watch Sport will be given to the top foreign contestant who achieve a gold medal standard. The youngest medallist, female medallist, and two top secondary school contestants will each get a 38mm Apple Watch Sport.
On top of those attractive prizes, gold, silver, and bronze medals will also be given out.
The top overall winners will be selected to undergo further training and final selection to represent Singapore at IOI (Only Singapore citizens and permanent residents are eligible for IOI, but NOI does not impose such restrictions).
Please note that the date of IOI changes each year as it is fixed by the host country for that year. This year, IOI 2017 is held in Tehran, Iran, from 28 July to 4 August 2017.
Note that the venues and competition details mentioned below are subjected to change. Please check back this page for updates. There will be a briefing before the actual NOI for any last minute changes, if any.
The 20th NOI competition will be held on Saturday, 18 March 2017.
Contestants are to report in school uniform at 07:30am outside Seminar Room 1, Block COM1, Level 2, School of Computing. You will mark your attendance, and collect your name tag there. At 08:15am, a briefing to all contestants will be conducted. You will then proceed to the competition rooms on the basement of Block COM1, School of Computing.
At 09:00am, five programming tasks will be given out to the contestants, who will individually code the solutions within five hours. Light snacks and drinks will be provided during the session.
Any contestant who reports after 10.00am is deemed to be absent and will not be allowed to participate, and will not receive the Certificate of Participation.
Contestants do not need to be present for judging.
The results of the 20th NOI will be announced on the same day 18 March 2017, at 6:00pm onwards during the prize-giving ceremony. All contestants are required to attend the prize-giving ceremony.
Participants who do not attend the prize giving ceremony WILL NOT be able to collect their certificates or prizes.
The decision of the NOI Committee will be final.
All of the tasks at NOI are programming tasks and are designed to be of an algorithmic nature. The focus is on designing correct and efficient algorithms.
The task statements list out for each task, the execution time limit that applies to every test run, the number of test data sets, and the maximum points awarded for the task.
While you may choose to write your programs in any of the programming languages offered, to enable objective judging you must compile your programs as stand-alone executables.
For C and C++ programmers, your main function should not require any arguments.
The input and output operations will be kept simple, allowing you to concentrate on the algorithmic details. No special features of the programming packages are needed, nor should they be used. In particular, the following features will NOT play a role in the programming tasks: Graphical output, mouse input, advanced file manipulation, advanced numeric processing and system calls.
You should be familiar with the programming package of your choice. Your ability to use the Integrated Development Environment (IDE), in particular, the built-in editor, compiler and the debugger, will be helpful. Some knowledge of compiler options may also be an advantage. Furthermore, you should be able to use Linux for such tasks as executing a program, changing the working directory and managing files.
The only external communications allowed by your programs are reading from standard input, writing to standard output, and (if any) calling external functions in libraries that are specified in the task descriptions.
Programs should read their input data from standard input as ASCII text. This is the case even if the program needs only a single value.
You may assume that the input data agrees with the task description, and the data sets used in the judging do not contain errors.
Input data consist of a sequence of items. An item is either an integer or a non-empty character string of letters ('a' to 'z', 'A' to 'Z'), digits ('0' to '9') and/or other characters ('@', '$', '*', etc.). Items are separated by either a single space character or a single end-of-line.
In general the structure of the input is such that you do not have to worry about end-of-line and end-of-file conditions. There may, however, be exceptions to this. In any case, the task description will indicate so if an exception exists.
At least one sample input file is provided for each competition task, both in the task description and the task directory. However, successful execution of your program on the sample file does not necessarily guarantee that your program is correct.
Programs should write their output data to the standard output as ASCII text exactly as specified in the task description.
Output data consist of a sequence of items. An item is either an integer or a non-empty character string of letters ('a' to 'z', 'A' to 'Z'), digits ('0' to '9') and/or other characters ('@', '$', '*', etc.). Items are separated by either a single space character or a single end-of-line.
The output should be formatted exactly as shown in the task description. Do NOT add output of your own (such as debugging output), as this may disrupt the judging process.
No files are to be read by your programs. Also, your programs must not create any files during execution.
The following rules govern the execution of the contest.
When you enter the competition room, your allocated computer will
already have been switched on. The competition task descriptions will
be distributed to you at the start of the competition.
You must not communicate with your friends during the competition, either in the competition room, or outside. Do not touch the keyboard until the start signal is given.
During the first two hours of the competition you may submit
questions through the online submission system concerning any possible
obscurities or ambiguities in the competition task descriptions. Each
question must be written in English and must be phrased as a True/False
question. Each question will be answered with only one of the following
responses: Yes, No, No Comment, Answered in the
Task Description, or Invalid Question.
Your question(s) may take some time to be answered, so you should
continue working while waiting for the answer(s) to your question(s).
You may ask the lab supervisors for assistance at any time. The supervisors will NOT answer questions about the competition tasks, but will help you find toilets, refreshments, and attend to computer problems.
During the competition you may get printouts of ASCII files. You may print your code through the online submission system.
Copy of files submitted to the online submission system are saved. You can retrieve old copies of your code. This serves as a backup of your code. You are advised to maintain backups regularly, so that you can recover in the unlikely event of a machine failure.
You will be warned at 15 minutes and again at 5 minutes before the end of the competition. Take this opportunity to go through the following check list for the tasks:
When the TIME'S UP signal is given, you must immediately stop working.
Do NOT switch off your computer.
Remember, these rules & regulations are subject to changes.
Chairman: A/Prof Tan Sun Teck
Vice Chairman: Dr Steven Halim
Secretary: Dr Colin Tan
Scientific Chair: Prof Ken Sung
Technical chair: A/Prof Chan Mun Choon
Admin: Mrs Ho Siew Foong, Ms Teo Pei Pei
Technical Admin: Mr. Leong Wai Kin
The competition computers are Intel PCs with Ubuntu 14 LTS, each equipped with a keyboard and a mouse.
Writing pad and pens will be provided. As this is an open-book competition, you may bring in books and notes. You are NOT allowed to bring in computers, diskettes or other computing and electronic devices (except calculators and non-smart watches). You are to turn off your MP3 player, handphone, etc. and keep them inside your bag.
The following compilers will be installed on each computer:
The following editors/IDE will be installed on each computer:
Firefox will be available as the browser.