details advancers details

Algorithm Competition Official Rules and Regulations

Eligibility  |   Registration  |   Qualification Round  |   About the Tournament  |   Prizes  |   Conditions of Participation

Overview of the Tournament

No purchase necessary to enter or win. The tournament is void where prohibited.

The 2004 TopCoder Open ("TCO") Algorithm Competition will take place between September 7th and November 12th, 2004. It will consist of one (1) online qualification round, four (4) online elimination rounds and two (2) onsite final rounds, being the Semifinal and Championship rounds. The prize purse for this competition is $50,000 in cash. Up to 50 competitors will win a cash prize and for competing in Online Round #1, up to 500 competitors will receive a participatory prize. The top 24 finishers in the online rounds will advance to the onsite Semifinal and Championship rounds, being held at the Santa Clara Marriott in Santa Clara, California, USA on November 11th and 12th.

back to top Eligibility

TopCoder members who are at least 18 years of age as of September 7, 2004 are eligible to compete in the Algorithm Competition.

TopCoder members who are 18 years of age or older are eligible to win cash prizes, unless otherwise prohibited. The 2004 TopCoder Open is void in the Quebec province of Canada, and elsewhere where prohibited by applicable law. Cash prizes will not be paid to residents of Cuba, Iran, Iraq, Libya, North Korea, Sudan, or Syria.

Employees of TopCoder, Inc. and Microsoft, Inc. and those involved in the production (including prize suppliers), implementation and distribution of this tournament and their advertising or promotion agencies, parent companies, service providers, agents, officers, subsidiaries or affiliates, or any other persons or entities directly associated with the tournament and members of the immediate families and/or persons living in the same household as such persons, are ineligible to enter the tournament.

back to top Registration

Registration for the 2004 TopCoder Open Algorithm Competition will open at 9:00AM ET on Monday, August 9, 2004, and will close at 9:00AM ET on Tuesday, September 7, 2004. In order to be eligible to compete in the Algorithm Competition, competitors must be a registered TopCoder member and have registered separately for the Algorithm Competition. Registration for the competition is unlimited, however each individual may only register once.

back to top Qualification Round

12:00PM ET TUESDAY, SEPTEMBER 7 - 12:00PM ET WEDNESDAY, SEPTEMBER 8

The Qualification Round will be open for 24 hours from 12:00PM ET Tuesday, September 7 through 12:00PM ET Wednesday, September 8, 2004. Each competitor may participate in the Qualification Round at any time during the 24 hours. Competitors may only attempt to qualify one time during the 24 hours.

The Qualification Round will consist of two phases: the Coding Phase and the System Test Phase. The Qualification Round will not include a Challenge Phase.

  • The Qualification Round Coding Phase is a timed event where contestants are presented with one of five possible problem sets. Each problem set contains two questions representing two levels of complexity and, accordingly, two levels of point earnings potential. Points for a question are awarded upon submission of any solution that successfully compiles and are calculated based on the total time elapsed from the time the question was opened to the time it was submitted. Competitors will have 60 minutes to complete either or both of the problems. The 60 minutes will begin to elapse once the first problem is opened. The timer in the coding window will count down to the end of the 60 minutes. A competitor who begins the qualification attempt within the final 60 minutes of the Qualification Round will have less than 60 minutes to attempt qualification.
  • The Qualification Round System Testing Phase is applied to all submitted code at the conclusion of the Qualification Round. 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 question.

Upon logging in to the TopCoder Arena during the Qualification Round, each competitor who has registered for the Algorithm Competition will receive a message indicating which set of problems he/she has been assigned. The highest 100 scorers from each of the five problem sets presented during the Qualification Round will be eligible to compete in Online Round #1 of the Algorithm Competition. A maximum of 500 competitors will advance. Members will be rated at the conclusion of the Qualification Round based on their performance against other competitors with the same problem set. All qualifiers will be assigned tournament seeds based on their Algorithm rating following the Qualification Round.

back to top About the Tournament

Online Elimination Rounds
Everyone who competes in an online round must login to the TopCoder Competition Arena no later than ten (10) minutes prior to the start of the online round. (See the schedule for competition dates and times.) TopCoder members from around the world may be participating in these online 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 he/she has 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 (following the Qualification Round) 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 * (all Eastern Time)
Online Round #1 Saturday, September 11th
Registration: 9:00 AM - 11:55 AM ET
START: 12:00 PM (Noon)
Online Round #2 Tuesday, September 14th
Registration: 6:30 PM - 9:25 PM ET
START: 9:30 PM
Online Round #3 Wednesday, September 22nd
Registration: 6:30 PM - 9:25 PM ET
START: 9:30 PM
Online Round #4 Wednesday, September 29th
Registration: 6:30 PM - 9:25 PM ET
START: 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.

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 positive (i.e., greater-than-zero) point total. The structure of the online rounds is as follows:

  • Online Round #1
    Up to 500 coders will compete and up to 200 will advance. The winner of each of the 50 rooms will automatically advance to Online Round #2. The remaining 150 spots will be "wildcards", and will be awarded based on total points across all rooms. (In the event there are less than 50 room winners in Round #1, the total number of wildcard spots will be equal to 200 minus the actual number of room winners.)
  • Online Round #2
    Up to 200 coders will compete and up to 100 will advance. The winner of each of the 20 rooms will automatically advance to Online Round #3. The remaining 80 spots will be wildcards and will be awarded based on total points across all rooms. (In the event there are less than 20 room winners in Round #2, the total number of wildcard spots will be equal to 100 minus the actual number of room winners.)
  • Online Round #3
    Up to 100 coders will compete and up to 50 will advance. The winner of each of the 10 rooms will automatically advance to Online Round #4. The remaining 40 spots will be wildcards and will be awarded based on total points across all rooms. (In the event there are less than 10 room winners in Round #3, the total number of wildcard spots will be equal to 50 minus the actual number of room winners.)
  • Online Round #4
    Up to 50 coders will compete and up to 24 will advance. The winner of each of the 5 rooms will automatically advance to the field of Semifinalists. The remaining 19 spots will be wildcards and will be awarded based on total points across all rooms. (In the event there are less than 5 room winners in Round #4, the total number of wildcard spots will be equal to 24 minus the actual number of room winners.)

NOTE: In the event of a tie for any advancing position (i.e., room winner or wildcard spot), the tie 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 (excluding the Qualification Round).
  • If a tie still remains, then by rating (higher is better) following the Qualification Round.
  • If a tie still remains, all tied coders will advance to the next round.

Competition Round Structure
With the exception of the Qualification Round, 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 until 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.

Onsite Semifinal and Championship Rounds
The twenty-four (24) advancers from Online Round #4 will travel to the Santa Clara Marriott on Wednesday, November 10th to compete in the Semifinal round of the tournament being held on Thursday, November 11th. All contestants must arrive at the Santa Clara Marriott no later than 4:00 PM PT on Wednesday, November 10th. 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, 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.) TopCoder will provide ground transportation to and from the airport, as well as accommodations and certain meals for each contestant. All other expenses are the responsibility of the contestant. TopCoder will not provide travel or lodging accommodations for competitor guests at the 2004 TopCoder Open.

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 (following the Qualification Round) 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 (all Pacific Time)
Semifinal Room #1 Thursday, November 11th, 10:00 AM**
Semifinal Room #2 Thursday, November 11th, 1:00 PM**
Semifinal Room #3 Thursday, November 11th, 4:00 PM**
Wildcard Round Friday, November 12th, 10:00 AM**
Championship Round Friday, November 12th, 3:00 PM**
** Times subject to change.

The Semifinal Round will consist of three (3) rooms of eight (8) coders each. The winner in each room will advance to the Championship Round. The 2nd and 3rd place finishers in each room will participate in one (1) Wildcard Round. The winner of the Wildcard Round will also advance to the Championship Round. In the event of a tie in the Semifinal or Wildcard rounds, the tie will be resolved in the following manner (in order):

  • Total points acquired (higher is better) during Online Rounds #1, #2, #3 and #4 of the 2004 TopCoder Open Algorithm Competition.
  • If a tie still remains, then by rating (higher is better) following the Qualification Round.
  • If a tie still remains, then all tied coders 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):

  • Advancement path to Championship Round (Semifinal Round winner over Wildcard Round winner)
  • If a tie still remains, then by total points acquired (higher is better) during Online Rounds #1, #2, #3 and #4 of the 2004 TopCoder Open Algorithm Competition.
  • If a tie still remains, then the prize money will be distributed equally among the tied coders.

back to top About the Prizes

The tournament will award prizes to up to 500 competitors and $50,000 in cash prizes. Any and all applicable taxes on prizes are the sole responsibility of the prizewinner. Prizes will be distributed as follows:

Competitor(s) Prize
1st place finisher* in the Championship Round - Algorithm Competition Champion $20,000
2nd place finisher* in the Championship Round $10,000
3rd place finisher* in the Championship Round $5,000
4th place finisher* in the Championship Round $2,500
Twenty (20) non-finalists* in the Semifinal Rounds $500 each
Up to fifty (50) participants who compete in Online Round #4 $50 each
Up to 500 participants who compete in Online Round #1 Limited edition 2004 TopCoder Open t-shirt
* Prize will be awarded at the conclusion of the Championship Round. Winner must be present at the onsite rounds to receive prize.

back to top 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. Also, by participating in this tournament, you consent to providing certain information to Microsoft for recruiting purposes. Such information shall include the information contained in your TopCoder member profile and your competition statistics.

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 email within 10 days of the completion of the Online Round #1 that they have won a prize. Contestants who advance to Online Round #4 must complete the following documents online or return them to TopCoder by 9:00 PM ET on Wednesday, September 29, 2004:

  • Competitor questionnaire - the questions and responses will be published in the 2004 TopCoder Open Program
  • Affidavit of Eligibility and Liability and Publicity Release (must be notarized unless you already have a notarized affidavit on file with TopCoder)
  • Applicable tax form (unless your tax form is already on file with TopCoder)

Contestants who advance to the onsite Semifinal Round must also complete the following document and return it to TopCoder by Monday, October 18, 2004:

  • Travel form - provides TopCoder with the appropriate information needed for your travel to the onsite Semifinal Round

Prizes will be presented within 60 days of making an eligibility determination. Unclaimed or undeliverable prizes will not be awarded. Competitors who do not submit the required information listed above by the applicable deadlines will forfeit their prizes.

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 cash prize, winners will be required to return by Wednesday, September 29, 2004 a completed (i) competitor questionnaire, (ii) notarized Affidavit of Eligibility and Liability and Publicity Release, and (iii) IRS Form W-9 or W-8BEN, as appropriate, if one is not already on file with TopCoder; and by Monday, October 18, 2004 a completed travel form. In completing the Affidavit of Eligibility and Liability and Publicity Release, a winner (a) confirms his/her eligibility, (b) represents and warrants that he/she has not cheated; that the idea for the code and/or challenge submitted is his/hers alone, (c) verifies the accuracy of the demographic information submitted to, and contained in, the TopCoder member database, (d) authorizes TopCoder to publicize the tournament's results, (e) agrees to sign any applicable forms required by tax authorities, (f) licenses to TopCoder rights to all information submitted during the tournament (including rights to source code and other executables), and (g) 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 non-sponsor 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 http://www.topcoder.com/, and will be displayed for at least 3 months after the end of the tournament.

Any appeals regarding the validity of the results of the online rounds of competition must be received by TopCoder at the service@topcoder.com email address no later than 11:00AM ET on the day following the date on which the round of competition was held. The results of the online rounds of competition will be considered by TopCoder to be final at 11:00AM ET on the second day following the round of competition. For the onsite rounds of competition, competitors may appeal the results within five (5) minutes following the announcements of the results.

This tournament is brought to you by TopCoder, Inc. (http://www.topcoder.com/) 703 Hebron Avenue (now 95 Glastonbury Blvd), Glastonbury, CT 06033.



Great Opportunities are Available from our Sponsors

Microsoft

NVIDIA

Intel Developer Services

Yahoo!