Congratulations to our TCO02 Algorithm Champion, John Dethridge!
Check out all the great photos here.
Finalists
Rules
Conditions
Conditions of Participation
By participating in the tournament, you agree to be bound by these rules and to all decisions of TopCoder, which are final, binding and conclusive in all matters.
Contestants must not cheat. All ideas for any code and/or challenge submitted must be the contestant’s alone.
Winners in each round of competition will be those competitors who win the most points in their respective rooms. All decisions relating to the viability of submissions, the ranking of submissions and all other matters pertaining to the tournament shall be within the sole discretion of TopCoder or its designee and shall be final and binding in all respects.
Prizewinners will be notified via e-mail within 10 days of the completion of the Online Round #4 that they have won a prize. If prizewinners advance to the onsite rounds of competition, they will also be forwarded an Affidavit of Eligibility and Liability and Publicity Release to be completed and returned to TopCoder no later than Tuesday, November 5th. Prizes will be presented within 60 days of making an eligibility determination. Unclaimed or undeliverable prizes will not be awarded.
As a condition of participation in the tournament, all information provided by you in your TopCoder member profile must be comprehensive, accurate and up-to-date. TopCoder may require you to complete an additional registration form to register for the tournament. In order to be eligible to participate in the tournament, you must have completed any and all registration forms required by TopCoder.
As a condition of winning and redeeming a prize, winners will be required to return within 5 days of receipt a completed (i) notarized Affidavit of Eligibility and Liability and Publicity Release, and (ii) IRS Form W-9 or W-8BEN, as appropriate, if one is not already on file with TopCoder. In completing the Affidavit of Eligibility and Liability and Publicity Release, a winner (i) confirms his/her eligibility, (ii) represents and warrants that he/she has not cheated; that the idea for the code and/or challenge submitted is his/hers alone, (iii) verifies the accuracy of the demographic information submitted, (iv) authorizes TopCoder to publicize the tournament’s results, (v) agrees to sign any applicable forms required by tax authorities, (vi) licenses to TopCoder rights to all information submitted during the tournament (including rights to source code and other executables), and (vii) releases TopCoder from liability arising out of any prize won. TopCoder requires contestants to complete the Form W-9 or W-8BEN for tax reporting purposes. If prize notification is returned as undeliverable, or if the winner fails to return the Affidavit, or the W-9 or W-8BEN, as specified, the winner will be disqualified and the prize money won by the disqualified winner will be forfeited. Providing false information in the registration process or in the required forms described in this paragraph will disqualify a winner.
By participating in a tournament and redeeming a prize, a winner releases and agrees to hold harmless TopCoder, its affiliates, subsidiaries, advertising and promotion agencies, sponsors, and prize suppliers, and all of their respective directors, officers, employees, representatives and agents, from and against any and all liability for any loss, property damage or damage to person, including without limitation, death and injury, due in whole or in part, directly or indirectly, from or arising out of participation in this tournament, or participation in any tournament-related activity, or the receipt, use or misuse of a prize. TopCoder specifically disclaims all liability associated with, and makes no warranties with regard to, any prize given.
In addition, all prizewinners agree to cooperate with TopCoder’s publicity efforts, without further compensation. This includes the agreement to use their name, handle, address (city and state) and likeness for publicity purposes, where legal, for this or similar future tournaments, and to use the statements made by, or attributed to, the winners relating to TopCoder and any and all rights to said use, without further compensation. Furthermore, all prizewinners agree to promptly notify TopCoder if a third-party contacts the prizewinner regarding employment opportunities and/or media interest as a result of the prizewinner’s participation in the tournament.
TopCoder reserves the right, in its sole discretion, to revoke any and all privileges associated with competing in this tournament, and to take any other action it deems appropriate, for no reason or any reason whatsoever, including if TopCoder suspects competitors of cheating, tampering with the entry process, the operation of the Web site, or the tournament process, or otherwise being in violation of the rules. TopCoder reserves the right to cancel, terminate or modify the tournament if it is not capable of completion as planned for any reason, including infection by computer virus, bugs, tampering, unauthorized intervention or technical failures of any sort.
Other
The tournament is void in whole or in part where prohibited by law.
A list of tournament winners by coder handles will be available on the web site at www.topcoder.com, and will be displayed for at least 3 months after the end of the tournament.
This tournament is brought to you by TopCoder, Inc. (www.topcoder.com) 703 Hebron Avenue (now 95 Glastonbury Blvd), Glastonbury, CT 06033.
Round Structure
Online Elimination Rounds
Everyone who competes in an online round must log on to the TopCoder Competition Arena no later than ten minutes prior to the start of the online round. (See below for competition dates and times.) TopCoder members from around the world may be participating in these rounds, but all start times will be communicated as Eastern Time, so contestants in different time zones must adjust accordingly. If a coder does not participate, for any reason, in an online round that they have advanced to, it will be treated as an automatic loss in that round of competition.
All competitors who have qualified for an online round will be assigned to a specific room. TopCoder will determine all room assignments prior to the start of each online round in a manner such that the average competitor rating (as of October 1st) for each room will be similar. The dates and times of the online rounds of competition are as follows
Round of Competition | Date and Time * |
- Part 1 - Part 2
| Tuesday, October 8th Registration: 7:30 PM - 9:25 PM START: 9:30 PM Thursday, October 10th Registration: 7:30 PM - 9:25 PM START: 9:30 PM Wednesday, October 16th at 9:30 PM Wednesday, October 23rd at 9:30 PM Wednesday, October 30th at 9:30 PM |
*NOTE: In the event that a round must be cancelled for any reason, the “raindate” for the cancelled match will be the following day at the same time. |
Onsite Rounds
Onsite Semifinal and Championship Rounds
The sixteen (16) advancers from Online Round #4 will travel to Mohegan Sun on Thursday, November 21st to compete in the Semifinal round of the tournament being held on Friday, November 22nd. All contestants must arrive at Mohegan Sun no later than 4:00 PM on Thursday, November 21st. If a contestant is unable to attend the onsite rounds, he/she will forfeit his/her eligibility to receive a prize, and his/her spot in the tournament will be given to the next highest overall scorer from Online Round #4.
TopCoder will provide travel arrangements for each competitor and a guest of his/her choice, up to a cost of $1,000 per person. (That is, if a contestant’s airfare is greater than $1,000, the contestant will be responsible for the difference between the cost of the airfare and $1,000.) In addition, TopCoder will also provide travel arrangements to and from the airport to the Mohegan Sun Casino and accommodations and certain meals for each contestant and his/her guest. All other expenses are the responsibility of the contestant and his/her guest.
TopCoder will determine the room assignments for the Semifinal rooms prior to the start of each Semifinal round, in a manner such that the average competitor rating (as of October 1st) for each room will be similar. The dates and times of the onsite Semifinal and Championship rounds are as follows:
Round of Competition | Date and Time |
Semifinal Room #1 | Friday, November 22nd, 8:00 AM |
Semifinal Room #2 | Friday, November 22nd, 11:00 AM |
Semifinal Room #3 | Friday, November 22nd, 3:00 PM |
Semifinal Room #4 | Friday, November 22nd, 6:00 PM |
Championship Round | Saturday, November 23rd, 11:00 AM |
The Semifinal Round will consist of four (4) rooms of four (4) coders each. The winner in each room will advance to the Championship Round.
The Championship Round will be a single round of four (4) coders. First, second, third and fourth place in the Championship round are determined by comparing the total points of each coder, with the highest point value placing first. The winner of the Championship Round will be the coder with the highest point total for the round. In the event of a tie in the Semifinal and/or Championship rounds, the tie will be resolved in the following manner (in order):
Total points acquired (higher is better) during the 2002 TopCoder Invitational to date
If a tie still remains, then by rating (higher is better) as of October 1st
If a tie still remains in the Semifinal round, then all tied coders will advance to the Championship Round
If a tie still remains in the Championship round, then the prize money will be distributed equally amongst the tied coders
About the Prizes
Prizes will be awarded to the sixty four (64) competitors who advance to Online Round #4. Prize money will be distributed as follows:
Competitor(s) | Prize Money |
48 competitors advancing to, and competing in, Online Round #4 who do not advance to the Semifinal round | $500 each |
4th place finisher in each of the four (4) Semifinal rooms | $1,250 each |
3rd place finisher in each of the four (4) Semifinal rooms | $2,500 each |
2nd place finisher in each of the four (4) Semifinal rooms | $4,000 each |
4th place finisher in the Championship Round | $10,000 |
3rd place finisher in the Championship Round | $15,000 |
2nd place finisher in the Championship Round | $20,000 |
1st place finisher – Tournament Champion | $50,000 |
All prizes will be awarded at the conclusion of the Championship Round. All winners (with the exception of the 48 competitors who do not advance to the onsite rounds) must be present at the onsite rounds to receive their prizes. Any and all applicable taxes on prizes, including the cost of having a guest attend the onsite rounds, are the sole responsibility of the prizewinner.
Scoring/ Advancing
Scoring and Advancing during Online Rounds
After each round of competition, the winners from each of the assigned rooms will be identified and will advance to the next online round. Coder advancement in all rounds is determined by comparing the total point values from all three phases of the round (see Competition Round Structure) for each coder. In order to advance, a coder must finish each round with a greater-than-zero point total. The structure of the online rounds is as follows:
Online Round #1 (to be completed in 2 parts)
A total of 1,024 coders will compete in Round #1 and a total of 512 will advance. Round #1 will consist of 2 parts, with 512 people competing in each part and 256 members advancing from each part.
The winner of each of the 128 rooms (64 rooms in each part of Round #1), will automatically advance (i.e. receive an automatic berth) to Online Round #2.
The remaining 384 spots (192 spots from each part of Round #1) will be wildcards, and will be handed out based on total points across all rooms. (In the event that there are not 64 room winners in one part of Round #1, the total number of wildcard spots for that part of Round #1 will be equal to 256 minus the number of automatic berths awarded to the room winners.)
Online Round #2
512 coders will compete and 256 will advance.
The winner of each of the 64 rooms will automatically advance to Online Round #3.
The remaining 192 spots will be wildcards and will be handed out based on total points across all rooms. (In the event that there are not 64 room winners in Round #2, the total number of wildcard spots will be equal to 256 minus the number of automatic berths awarded to the room winners.)
Online Round #3
256 coders will compete and 64 will advance.
The winner of each of the 32 rooms will automatically advance to Online Round #4.
The remaining 32 spots will be wildcards and will be handed out based on total points across all rooms. (In the event that there are not 32 room winners in Round #3, the total number of wildcard spots will be equal to 64 minus the number of automatic berths awarded to the room winners.)
Online Round #4
64 coders will compete and 16 will advance to the onsite Semifinal round.
The winner of each of the 8 rooms will automatically advance to the Semifinal round.
The remaining 8 spots will be wildcards and will be handed out based on total points across all rooms. (In the event that there are not 8 room winners in Round #4, the total number of wildcard spots will be equal to 16 minus the number of automatic berths awarded to the room winners.)
NOTE: If a room has no contestants who have more than zero points, the automatic berth for that room will be placed into the wildcard pool. Any tie in points for an automatic berth in a room or for the last spot of the wildcard pool will be resolved in the following manner:
Total points acquired (higher is better) during the rounds of the tournament in which all of the tied participants were presented with the same set of problems
If a tie still remains, then by rating (higher is better) as of October 1, 2002
If a tie still remains, all tied coders will advance to the next round
Competition Round Structure
Each online and onsite round of competition consists of three phases: the Coding Phase, Challenge Phase, and System Testing Phase. (Note: the format of these competition rounds is similar to the format of the Single Round Matches.)
The Coding Phase is a timed event where all contestants are presented with the same three questions representing three levels of complexity and, accordingly, three levels of point earnings potential. Points for a problem are awarded upon submission of any solution that successfully compiles and are calculated on the total time elapsed from the time the problem was opened to the time it was submitted.
The Challenge Phase is a timed event wherein each competitor has a chance to challenge the functionality of other competitors’ code. A successful challenge will result in a loss of the original problem submission points by the defendant, and a 50-point reward for the challenger. Unsuccessful challengers will incur a point reduction of 50 points as a penalty, applied against their total score in that round of competition.
The System Testing Phase is applied to all submitted code that has not already been successfully challenged. If the TopCoder System Test finds code that is flawed, the author of that code submission will lose all of the points that were originally earned for that code submission. The automated tester will apply a set of inputs, expecting the output from the code submission to be correct. If the output from a coder’s submission does not match the expected output, the submission is considered flawed. The same set of input/output test cases will be applied to all code submissions for a given problem. All successful challenges from the Challenge Phase will be added to the sets of inputs for the System Testing Phase.