The matches are similar to Topcoder Single Round Matches (SRMs) and are available in four programming languages: Java, C#, C++, and Python.Each online and onsite round of competition consists of three phases: Coding Phase, Challenge Phase, and System Testing Phase.
Note: The format of these competition rounds is similar to the format of topcoder Single Round Matches.
The Algorithm Competition is part of the Tournament, and by participating in this Algorithm Competition, you agree to these rules.
The Challenge Phase is a timed phase wherein each Competitor has the opportunity to challenge the functionality of any other Competitors’ submission. If successful, the challenge will result in (i) the challenged Competitor losing any points awarded for the challenged submission, and (ii) a 50-point bonus for the challenging Competitor. If unsuccessful, the challenging competitor’s point total in that round of the Competition will be reduced by 25 points. During the Online Rounds, the Challenge Phase will last 15 minutes. During the Onsite Rounds, the Challenge Phase will last 10 minutes.
Before the start of each round, the Competitors will be randomly assigned to competition rooms. A Competitor is only able to challenge the solutions from the same room into which he/she is assigned. Each competition room will have a maximum of 25 Competitors.
The System Testing Phase applies to all submissions that have not already been successfully challenged. If the Topcoder System Test finds a flawed submission, the Competitor who submitted that submission will lose all of the points that were originally awarded for that submission. The System Testing Phase consists of applying a set of inputs to a submission. If the output from a Competitor’s submission is not correct, the submission is considered flawed and loses all points awarded. All successful challenges from the Challenge Phase will be added to the sets of inputs for the System Testing Phase.
The Unused Code Rule is in effect for all Online and Onsite TCO rounds. This rule is a policy against including extra content into a submission that is not a part of the solution of the problem. For detailed description of the rule, please refer to chapter 8 here.
Competitors receiving an Automatic Berth are not permitted to compete in the qualification rounds.
Advancement To Online Round 2 – All Competitors who do not receive an automatic berth, who meet all of the Algorithm Competition and Tournament eligibility criteria can compete for one of the remaining 2,250 spots in Online Round 2. Three (3) Online Rounds (1A, 1B and 1C) will be held and the highest scoring 750 Competitors from each of these rounds will advance to Online Round 2. Competitors who have already advanced to Online Round 2 may not compete in future Online Rounds of qualification round.
The schedule and details of the Online Qualification Rounds are as follows:
|Online Qualification Rounds||Time||Max # of Competitors||Max # of Advancers|
|Round 1A||Saturday April 1 at 12:00||All members who have not previously advanced – limited to the first 2,500 Competitors who register in the Arena||750|
|Round 1B||Saturday April 8 at 12:00||All members who have not previously advanced – limited to the first 2,500 Competitors who register in the Arena||750|
|Round 1C||Saturday May 6 at 12:00||All members who have not previously advanced – limited to the first 2,500 Competitors who register in the Arena||750|
All Competitors who advanced to Online Round 3 can compete for one of the 10 spots in the Onsite Algorithm Competition. Two such rounds will be held and the highest scoring 5 competitors from each of these rounds will advance to the Onsite Algorithm Competition. Any competitor may only win a single advancement (and trip) to the championship round.
The dates and times of the Online Round 2:
|Online Round 2||Time||Max # of Participants||Max # of Advancers|
|Round 2A||Saturday May 20 at 12:00||Up to 2,500||40|
|Round 2B||Saturday July 8 at 12:00||Up to 2,500||40|
|Round 2C||Saturday July 22 at 12:00||Up to 2,500||40|
|Round 3A||Saturday August 5 at 12:00||Up to 120||5|
|Round 3B||Saturday September 9 at 12:00||Up to 120||5|
|Wildcard||Saturday September 10 2017 at 12:00||Up to 60||2|
|Regional Event Location*||Date|
|Austin, Texas, USA||April 29, 2017|
|Saint-Petersburg, Russia||May 7, 2017|
|Beijing, China||June 24, 2017|
|Bangalore, India||August 20, 2017|
|Warsaw, Poland||September 2, 2017|
|Pittsburgh, Pennsylvania, USA||September 8, 2017|
*Times listed in UTC -4.
The structure of the Online Rounds is as follows:
Online Rounds 1A, 1B, 1C
Up to 2,500 Competitors will compete, with up to 750 of the highest scoring Competitors across all rooms advancing to Online Stage 2.
Regional Rounds 2A, 2B, 2C
Up to 2,500 Competitors will compete, with up to 40 of the highest scoring Competitors across all rooms advancing to Online Stage 3.
Online Rounds 3A, 3B
Up to 120 Competitors will compete, with the 5 highest scoring Competitors (from each round) across all rooms advancing to Onsite Algorithm Competition.
Onsite Regional Rounds
Up to 10 Competitors with the highest scores across all rooms will advance to the Online Wild Card Round.
Online Wild Card Round
Up to 70 Competitors will compete, with the 2 highest scoring Competitors across all rooms advancing to the Onsite Algorithm Competition.
NOTE: In the event of a tie for any advancing position during an Online Rounds, all tied competitors will advance to the next stage and the number of eligible Competitors for that next stage will be adjusted accordingly.
In the event of a tie for any advancing position, the tie will be resolved in the following manner:
|Onsite Final Rounds||Date and Time|
|Semifinal 1||Sunday, October 22, 4:30 p.m. – 7:00 p.m.|
|Semifinal 2||Monday, October 23, 1:00 p.m. – 3:30 p.m.|
|Championship||Tuesday, October 24, 1:00 p.m. – 3:30 p.m.|
The Championship Round will be a single round with up to six (6) Onsite Algorithm Competitors. Final placement in the Championship Round is determined by comparing the total points of each Onsite Algorithm Competitor during the Championship Round. The winner of the Algorithm Competition will be the Onsite Algorithm Competitor with the highest point total during the Championship Round.
In the event of a tie in a Semifinal Round, all tied Algorithm Competitors will advance to the Championship.
In the event of a tie in a Championship Round, the prize money will be distributed equally among the tied Onsite Algorithm Competitors.
|Onsite Final Winners||Prize|
|All Round 3 Participants||TCO T-shirt (one per competitor)|