Congratulations to our TCO18 Algorithm Champion,
About the Algorithm Competition
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 2018 Topcoder Open Algorithm Competition (“Algorithm Competition”) will take place between March 5, 2018 and the onsite Algorithm Finals taking place at a location and on dates to be determined. The Algorithm Competition will consist of two (2) online qualification rounds, five (5) online rounds, up to five (5) onsite regional rounds, one (1) online wild card round, and the onsite Semi-Finals and Finals. The highest scoring competitors from the online round 4 and from the online wild card round will win a trip to the Tournament to compete in the onsite Semifinal and/or Championship Rounds of the Algorithm Competition.
The Algorithm Competition is part of the Tournament, and by participating in this Algorithm Competition, you agree to these rules.
RegistrationThere is no specific registration needed for the TCO18 Algorithm Competition. Competitors will only need to be a Topcoder member, and register for a competition round just prior to the start of it.
Algorithm Competition Round StructureEach Online and Onsite Round of the Algorithm 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 rules in place for Single Round Matches as of March 5, 2018 will also apply to the online rounds of the Algorithm Competition. The same rules will apply to the onsite rounds, with the only exceptions being a different length of Coding and Challenge Phases.)
The Coding Phase is a timed phase in which all Competitors are presented with the same three questions representing three levels of complexity and three levels of potential points. Points are awarded for each problem upon submission of a solution that successfully compiles. Points are calculated on the total time elapsed from the time the Competitor opened the problem until the time the Competitor’s successfully compiling submission was submitted. During the Online Rounds, the Coding Phase will last 75 minutes. During the Onsite Rounds, the Coding Phase will last 85 minutes.
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.
Qualification RoundAutomatic Berths – The 250 members who have the highest algorithm competition rating as of Friday, April 20, 2018 at 12:00 UTC -4 and who meet all of the following criteria will receive an automatic berth into Round 2:
- Competed in at least one rated Topcoder SRM in 2017/2018.
- Competed in a total of at least three (3) rated Topcoder Algorithm events as a member at any time.
- Meet all other Algorithm Competition and Tournament eligibility criteria.
In case of a tie for any automatic berth into Round 2, each tied member will receive an automatic berth.
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 1,750 spots in Online Round 2. Two (2) Online Rounds (1A and 1B) 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 21 2018 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||Thursday May 3 at 7:00||All members who have not previously advanced – limited to the first 2,500 Competitors who register in the Arena||750|
*Times listed in UTC -4.
Online Rounds 2, 3, and 4All Competitors who advanced to Online Round 2 can compete for one of the 400 spots in Online Round 3.
All Competitors who advanced to Online Round 3 can compete for one of the 10o spots in Online Round 4.
The top 14 Competitors who advance from Online Round 4 will move on 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 Rounds:
|Online Round||Time||Max # of Participants||Max # of Advancers|
|Round 2A||Saturday June 2 at 12:00||Up to 1,750||200|
|Round 2B||Thursday June 14 at 11:00||Up to 1,750||200|
|Round 2C||Tuesday June 26 at 7:00||Up to 1,750||200|
|Round 3A||Saturday July 7 at 12:00||Up to 400||50|
|Round 3B||Thursday July 19 at 21:00||Up to 400||50|
|Round 4||Saturday July 28 at 12:00||Up to 100||14|
|Online Wildcard||Saturday August 25 at 12:00||Up to 70||2|
Onsite Regional RoundsUp to five (5) Onsite Rounds will be held around the world at TCO18 Regional Events. Competitors wanting to compete in one of the onsite regional rounds must be present at the event and bring their own laptop to compete. The top 10 scores from each Regional Onsite Round will advance directly to the Online Wild Card Round. Regional event dates and locations will be announced at a later date.
Online Wild Card RoundOnce all the Onsite Regional Rounds are complete, there will be one Online Wild Card Round. The two (2) highest scorers from this round will win a trip to compete in the TCO18 Onsite Algorithm Finals!
*Times listed in UTC -4.
Scoring and Advancing during Online RoundsAfter each Online Round, a number of the highest scoring competitors across all rooms will advance to the next Online Stage (or to the Onsite Algorithm Competition). To determine a Competitor’s score during the Online Rounds, the total point values from all three phases of the round are added for each Competitor. The Competitors are then ranked in order of score, with the highest scoring Competitors advancing to the next stage. To be eligible to advance from an Online Round, the Competitor must finish this round of the Algorithm Competition with a point total greater than zero.
The structure of the Online Rounds is as follows:
Online Rounds 1A & 1B
Up to 2,500 Competitors will compete, with up to 750 of the highest scoring Competitors across all rooms advancing to Online Stage 2.
Online Rounds 2A , 2B, 2C
Up to 1,750 Competitors will compete, with up to 200 of the highest scoring Competitors across all rooms advancing to Online Stage 3.
Online Rounds 3A & 3B
Up to 400 Competitors will compete, with the 50 highest scoring Competitors (from each round) across all rooms advancing to Onsite Algorithm Competition.
Online Round 4
Up to 100 Competitors will compete, with the 14 highest scoring Competitors 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 50 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:
- The Competitor with the highest rating for the Algorithm Competition immediately prior the start of Online Round 1A will advance. If a Competitor was unrated immediately prior the start of Online Round 1A, it is assumed that he/she had a rating of zero.
- If a tie still remains, all remaining tied Competitors will advance.
In the event, when a Competitor advanced to the Onsite Algorithm Competition is unable to attend, Topcoder may choose to replace this Competitor with another Competitor or to take no action in this regard (thus reducing the total number of onsite Competitors). The choice is made at Topcoder’s sole discretion. In case of replacement choice, the right to attend the Onsite Algorithm Competition is passed to the next highest ranked competitor from the round in which the other competitor was unable to attend.
|Onsite Final Rounds||Date and Time|
The Onsite RoundsThere will be two (2) Semifinal Round with up to eight (8) Onsite Algorithm Competitors. Up to four (4) of the highest scoring Onsite Algorithm Competitors during each Semifinal Round will advance to the Championship Round. To be eligible to advance to the Championship Round, the Onsite Algorithm Competitor must finish the Semifinal Round with a point total greater than zero.
The Championship Round will be a single round with up to eight (8) 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.
About the PrizesThe Algorithm Competition will award prizes to the Onsite Algorithm Competitors in accordance with the following table:
|Onsite Final Winners||Prize|
|All Round 3 Participants||TCO T-shirt (one per competitor)|
* Prizes will be awarded at the conclusion of the Championship Round. Winner must be present at the onsite Awards Presentation to receive prize.
** To get the prize, Competitor must have positive points after Round 3. In the event of a tie, all competitors with that score will earn a t-shirt.
These rules may change at any time with or without prior notice.