This national competition for UK secondary schools pits teams of students in Years 7 to 11 against each other in a timed automated challenge across two rounds each of which can be sat at any point in a nominated working fortnight under local team supervision / invigilation. Local teacher expertise is not required, merely careful supervision.
**NOTE: THERE HAVE BEEN A FEW CHANGES FOR THE 2019 CHALLENGE – THERE ARE NOW TWO ROUNDS. THE FIRST ROUND IS FOR PAIRS (OR SOLO IF PREFERRED) SHARING ONE COMPUTER. THE SECOND ROUND IS NOW FOR THREES, USING THE SAME LOGIN AND SITTING TOGETHER ON UP TO THREE COMPUTERS. STUDENTS MUST BE IN YEARS 7-11 (UK – AS DETERMINED BY THEIR AGE). IN ROUND 2 A MAXIMUM OF TWO Y10-11 STUDENTS ARE ALLOWED.**
Coding submissions will be supported in a number of different languages but these will be limited and reviewed each year based on demand from registering schools. Python, C++, C#, Java and Visual Basic.Net are the main languages of choice for this competition.
Although the solutions themselves will be submitted online, the questions will be on paper copy as printed by the invigilating teacher who will collect and destroy all physical copies at the end of the session.
All questions will receive one or more lines of input and produce one or more lines of output. Each submission will be subjected to automated tests to determine the points awarded. Code submissions must complete within 4 seconds of processing time for each test.
Some sample level questions are available on the practice page.
The code must not generate any output other than the answer. For this reason no prompts should be included in any code otherwise solutions will be marked incorrect by the marking engine.
Round 1 Format
Questions will be simple and short. Pairs of students (or solo if preferred) will each work on a single computer to complete as many questions as they can in the 40 minutes allowed. Each question will be worth three points. There will be a range of easy questions across three levels with most questions solvable in well under ten lines of code.
Security is ‘low’ for Round 1 : this means that schools can allow different classes to take it on different days within the fortnight. The invigilating teacher is responsible for ensuring that no copies of the questions are distributed digitally (only in printed form) and that these are all collected in along with any rough paper at the end of the session.
Students must be from Years 7-11 but there are no other restrictions on the pairings.
Templates and details to facilitate Merit & Distinction certificates will be issued to participating schools along with their results. The top 50% of entries will be entitled to a merit certificate; the top 25% to a distinction certificate and students in those pairs will be entitled to enter Round 2 (either continuing in their pair or in rearranged teams – see below).
Round 2 Format (for those who qualify)
Questions will be more demanding and following the four-level format outlined below.
There will be teams of up to three this year and they will sit together. They may have access to one computer each but will share a common login. A maximum of two Y10-11 students are allowed in a team of three. At least one of the two students who qualified from Round 1 must make up any three but the other two need not have sat/qualified from Round 1 or have been in the same pair initially.
Security is ‘high’ for Round 2 : this means that if a school is entering multiple qualifying teams then all of those teams must sit the competition on the same date and time or in immediately contiguous times on the same date. We regret that there can be no flexibility on this rule for Round 2.
The Coding Environment
Teams can code directly into the online submission window but many will prefer to use an installed development environment and copy/paste their code across. All submissions must be made strictly within the time allowed however.
Individual question submissions will be marked online instantly with feedback given regarding the number of test cases passed or failed although the test cases themselves will not be given^. The overall results will not be available until after the competition closes when team pair scores will be combined.
Invigilation / Supervision
The supervising teacher will require no specialist knowledge but will invigilate to enforce the following basic rules. Further guidance will be sent to registered teachers together with the questions for secure storage which will be issued in February.
- Students must not access any other websites other than the competition site and the official language or IDE integrated reference documentation. Students can also take in copies of up to 20 A4 sides (10 double sided pages) of printed code snippets to assist them into either of the two rounds
- At the end of the session, the invigilating teacher will stop the exam and prevent any further submission of code at that point.
- The invigilating teacher must then complete an online form, that will be sent to them, to record team details and, importantly, the hackerrank username for each team along with a confirmation that all conditions of the competition format and invigilation have been met. Teachers do not need to send us any team logins or names in advance of their competition day.
Round 2 Question Details
A number of question tasks will be available – more than most teams will be able to complete in the hour permitted. These problems will range in difficulty from trivial to harder with points available for each task set accordingly. This format is designed with the intention that it encourages teams to divide and conquer and includes a younger programmer to aid development.
|Level 1||10 points per question||These can be solved typically by under ten lines of code, sometimes a lot less. They will typically focus on some basic text or number processing.|
|Level 2||20 points per question||These can also be solved with short programs but will make more developed use of array processing or functions.|
|Level 3||30 points per question||These are aimed at easier versions of British Informatics Olympiad level 1 questions and would typically involve iteration and selection.|
|Level 4||40 points per question||These are aimed at easier versions of BIO level 2 questions which focus on modelling questions e.g. of a short game simulation.|
* students can be in teams of less than 3 for Round 2 if needed although this is not ideal.
^ we intend to use hackerrank.com competition service to host the submissions and automated testing/scoring for the competition. Test cases and sample code will be made available in full after the event.
Competition formal summary information:
How to participate: a teacher at a UK school should register on our free registration form on this website
Start/closing dates: the competition window for coding submissions is shown on the homepage for each year. Registrations should be made at least a week before this window to ensure sufficient time for the material to be sent to the invigilating teaching
The nature of any prizes: see our prize pages on this site for the prizes available at the Round 2 stage
– geographical (UK schools only),
– ages (see team conditions above: a student’s yeargroup must be considered to be that defined by the usual yeargroup for their age range in UK schools)
– technical (submissions must be made online to the competition coding site, hosted on hackerrank and strictly invigilated by a teacher)
The promoter’s full name and business address:
The Perse School, Cambridge, CB2 8QF
How and when winner(s) will be notified, and when they will receive their prizes: details of winning schools / team names will be published within a month of the competition closing window (hopefully earlier). Details will be published on the site and winning schools will also be contacted via the invigilating teacher with prize money sent within six weeks of the competition closing date. Permission will be sought from winning schools/teams for any additional publicity material other than the team name and name of the school.
Scoring: Each challenge has a pre-determined score based on its level of difficulty. A team’s score on each challenge is determined by the number of test cases a team’s code submission successfully passes. If a team submits more than one solution per challenge then the team’s score will reflect their best code submission. Teams are ranked by score. If two or more teams achieve the same overall score, then the tie is broken by the number of points achieved on the Level 4 questions and if that is also equal, by the numbers of submissions needed to achieve those Level 4 points (less being better). The organising committee’s decision will be final.