5th May 2017: Changes are highlighted in red.
1st May 2017: Changes are highlighted in pink.
Please visit this page frequently for rule updates.
Date: 6th May, 2017
Time: 14:00 to 19:00 (5 hours)
Venue: Room 924, Ho Sin-Hang Engineering Building, The Chinese University of Hong Kong
* Please arrive at 13:30 to test the machines and the programming environment.
* Contestants who are late for more than 30 minutes will be disqualified.
* Early leave is not allowed.
* Refreshments will be provided during the test.
Competition Details and Eligibility
|International Olympiad in Informatics (IOI)||National Olympiad in Informatics (NOI)||International Olympiad of Metropolises (IOM)||ACM Hong Kong Collegiate Programming Contest (ACM-HK)|
|Date||28th July – 4th August 2017||17th – 23rd July 2017 (TBC)||4th – 9th September 2017||24th June 2017 (TBC; Whole day)|
|Location||Tehran, Iran||Shaoxing, Zhejiang||Moscow, Russia||Function Room 1-3 & Seaview Concourse, Cyberport 3|
HKOI Online Judge account holders who do not meet the above requirements may participate as observers.
Eligible students and observers may register through the judge’s Contests page on or before 4th May 2017 (Thu). Walk-in is allowed.
Allowed Programming Languages
Students who wish to be considered for a competition may only use the following programming languages. Note that this table does not correspond to the languages the competitions officially allow. Languages not listed below are not allowed.
2018 onward: No
2020 onward: No
2018 onward: TBC
2018 onward: No
2019 onward: TBC
2020 onward: No
2018 onward: TBC
2018 onward: No
Using a programming language not allowed for a competition would not immediately render one ineligible for it. However, such submissions would not count towards the ranking for that competition (see below).
All tasks can be solved using C++. For Java, we do not guarantee that a working compiler or IDE can be provided. Also, some tasks may not accept Java solutions.
- Intel 4th Generation Core i5 Processor or above
- 4 GB RAM or above (Note: the memory limit for your programs is likely to be much less than this)
- Standard hardware peripherals (i.e. Keyboard, Mouse, Monitor)
Contestants can bring one personal keyboard for use in the competition. Wireless keyboards, keyboards that require installation of drivers, and mechanical keyboards fitted with “blue” switches (or equivalent) are not allowed. The adjudicators reserve the right to examine and disallow any keyboard.
Operating System: Ubuntu 16.04.2 LTS Desktop
The Linux environment includes:
- GCC 4.9.3
- G++ 4.9.3
- GDB 7.11
- Free Pascal 3.0.0
- Lazaurus IDE 1.6
- Eclipse 4.6 with JDK Plugin
- Code::Blocks IDE 16.01
- Sublime Text 3
- Firefox Web Browser (for accessing the judge and documentation)
- Free Pascal and C++ STL documentation
However, submitted programs will be compiled using the compilers and compilation flags specified in the Help page of the Online Judge. The organiser will provide all the necessary hardware and software for the competition. Participants are not allowed to use any of their own resources in the competition.
The paper shall consist of several programming tasks. Each task may carry different points. Each task will be further divided into one or more subtasks. Each subtask may carry different points.
The syllabus is identical to the latest version of the IOI syllabus, which can be found here.
Submission of Solutions and Adjudication
Contestants should submit their solution source codes to the Online Judge. The judge will compile the source codes submitted by contestants, and then assess the compiled programs by testing them with a set of data unknown to the contestants and a marking scheme to be determined by the Adjudicators. To score points for a subtask, contestants’ programs must be correct for all test cases in that subtask.
Contestants will receive feedback about their submissions, including type of error first encountered (if any) for each subtask. A contestant’s final score will be the sum of points received from solved or partially-solved subtasks. Contestants may submit at most once per task per 60 seconds, and at most 50 times per task.
During the competition, contestants are allowed to seek clarification on the wordings of the tasks from the Adjudicators by raising their hand. Should the condition deem necessary, the clarifications will be announced to all contestants. Clarification related to the solutions will not be entertained.
Any queries about the competition should reach the Chief Adjudicator immediately after the competition. The decision of the Adjudicators will be final.
There is a small chance that the score may change due to change of tests, or indeterminacy of the contestant’s submission. Indeterminacy may arise intentionally due to the use of pseudo-random number generators, or unintentionally due to programming bugs or marginal running time. The Hong Kong Olympiad in Informatics Organizing Committee reserves the right to re-evaluate submissions, and the final score will be that yielded by the final evaluation.
Delegation Selection Algorithm
One ranking for each external competition will be produced. For each competition:
- – The ranking will only include the students who commit to attend the competition.
- – Students will be ordered by the total subtask scores after removing submissions made in disallowed languages.
- – In case of ties, the one with fewer number of submissions shall rank higher. If still tied, compare their last submissions that resulted in increase of total score. The one with the earlier submission time shall rank higher.
Then, the potential delegates will be selected as follows:
Step 1: 4 IOI members
The top 4 students in the IOI ranking will be selected.
Step 2a: 1 NOI `Class A’ member
The top student in the NOI ranking will be selected.
Step 2b: 3 NOI `Class A’ members
The next 3 students in the NOI ranking, excluding the IOI delegate members, will be selected.
Step 2c: 1 NOI `Class A’ member
If any of the 4 previously selected NOI delegate members is female, then the next student in the NOI ranking, excluding the IOI delegate members, will be selected.
Otherwise, the next female student in the NOI ranking, excluding the IOI delegate members, will be selected.
Step 2d: 1 NOI `Class B’ member
The next student in the NOI ranking, excluding the IOI delegate members, will be selected.
Step 3: 2 IOM members
The top 2 students in the IOM ranking will be selected.
Step 4: (Variable) ACM-HK members
All selected IOI, NOI and IOM delegates must attend ACM-HK. The top students from the ACM-HK ranking will be selected until there are 15 students (5 teams). Participation in ACM-HK is not guaranteed and is subject to the organiser’s confirmation. The HKOI Training Team will submit an ordered list of teams. The default teams are assigned according to the selection order above. Teams may swap members with the approval of all members in both teams, with the exception that the IOI, NOI and IOM delegates must stay in the 3 teams.
Should there be learning opportunities other than the 3 competitions, the training team may select members with reference to the TFT ranking and eligibility criteria.
Required Commitment and Results Announcement
The training team will submit the test results, student profiles, attendance records and comments from the trainers to the Hong Kong Association for Computer Education and the Education Bureau for review and approval. Potential delegates (including backup members) will be requested to sign a Commitment Agreement and Parent’s Consent which must be returned to the Organizing Committee within 7 days in order to be considered further. Withdrawal will not be permitted under any circumstances once the document has been signed.
Potential delegates will be notified of the final selection results. The HKOI Organizing Committee’s decision shall be final.
All selected members are required to attend ACM Hong Kong. IOI, NOI and IOM team members are required to attend additional team training sessions in June and July.