Competition Rules

Competitors have the responsibility to ensure that they fully understand these rules and abide by them during the competition.

These rules only relate to the competition itself, for conduct expected of those at Harvard, see the Student Handbook.

Grading System

Grading and evaluation take place on the grading system, which provides a similar execution environment for every solution submission. The workstations have network access to the grading system.

Problems

Each contestant will receive the official English statement of the problems on each contest day. Each contestant will have online access to the official English version of the problem statements and all translations in electronic format (PDF).

 

Each problem is either a programming problem, where the solution is source code, or an output-only (practical) problem, where the solution is a set of output files. Each problem is divided into some number of subproblems, each worth a portion of the total points. 

 

For each programming problem, time and memory limits are specified. In general, time and memory limits are generous (usually double those required by the expected solution). Memory refers to overall memory usage including executable code size, stack, dynamically allocated memory, etc.

 

For programming problems, the contestants can download a zip file from the grading system. The file contains interface files, a sample grading program, and an example implementation of a required source file. This example implementation shows an example of using the problem’s interface but does not solve the problem. The sample grader provided is not the same as the official grader used by the grading system.

Solutions and Submissions

Contestants submit their solutions for problems by using the grading system. Unless stated otherwise, the following restrictions apply to the submissions:

  • In each programming problem:

    • Each submitted solution must be written in an accepted language and its size must not exceed 50 KiB. Compilation of the program by the evaluation server must finish in at most 10 seconds and use at most 1 GiB of memory.

    • Submissions must not perform explicit input and output operations; instead, data must only be exchanged through the interfaces specified in the problem statement. In particular, direct access to any file, including standard input or standard output, is forbidden (writing to standard error is allowed).

  • In each output-only problem, each submission is a set of output files.

  • Contestants may perform any number of submissions but only the last 20 will be saved in the evaluation server.

 

Using multiple threads is allowed. However, the running time of the submission is the sum of the running times of all threads. E.g., if there were two threads running for 5 seconds each (thus, the program finishes in 5 seconds), then the running time of the submission will be 10 seconds.

Scoring

The scores for each problem will be calculated as follows:

  • Each subproblem consists of some number of test cases. Unless specified otherwise, in each programming problem the final submission is tested once per test case.

  • The score for each test case is calculated based on the program execution and the output as outlined in the problem statement.

  • The program execution on each test case is subject to time and memory limits, which are given in the problem statement. If the program exceeds these limits, it receives 0 points for this test case.

  • The score for each subproblem is the minimum of the scores for the test cases in the subproblem unless otherwise stated in the problem statement.

  • The final score for each problem is the sum of the scores for its subproblems. This sum is rounded to the nearest 2 decimal places.

  • The score for each output-only problem is calculated based on the number and difficulty of correct outputs found.


It should be noted that the score may change after it has been reported to the contestant, this can happen in two ways:

  • Due to a successful appeal after the contest.

  • Contestants’ submissions may be re-evaluated. This re-evaluation may sometimes lead to a different total score (e.g. if a solution behaves nondeterministically and runs very close to the time or memory limit). In such cases, the final score for the submission is the score for its latest re-evaluation.

Feedback

Contestants can use the grading system to view the status of their submissions.

For every submission, the grading system reports whether the submission was received correctly, or if the submission failed for any reason.

IMPORTANT: The grading system only reports whether the submission was received fully or not, it does not divulge the compilation results or whether your program:

  • Gave a wrong output.

  • Gave a malformed output.

  • Failed to compile.

  • Violated time or memory limits.

  • Failed to execute for any reason.

The test cases are ordered the same way in all the submissions.
No information on the actual test cases, the output produced by the contestant solution, or any other execution details will be given to the contestant.

 

In the event of an error with the test data, the Committee will:

  • Attempt to fix test data and regrade all solutions as quickly as possible.

  • Add test data if the grading data significantly differs from the intention of the Committee from before the contest.

  • Extend the contest round, especially if an issue is detected late into a round.

 

Communication Restrictions

All contact involving contestants is prohibited between the moment where problems for a competition day are presented and the end of the contest round that day. During this period contestants are not allowed to communicate by any means, direct or indirect, with anyone regarding the problems (except for necessary communication with the Committee and staff).

If a contestant violates this restriction, the contestant may be disqualified. If a guest violates this restriction, they will be removed from the round and potentially the competition.

Supplies

In the competition room, blank paper, writing implements, Clarification Request Forms, food, and water will be provided. On the competition days, contestants may not bring anything into the competition rooms, except for the following items so long as they do not use them to store or transmit data, written or otherwise:

  • clothing,

  • reasonable jewelry,

  • Harvard ID tag and keycard,

  • writing utensils,

  • USB keyboards and mice (with neither wireless communication nor programmable functions),

  • mouse pads,

  • small mascots,

  • English dictionaries,

  • food and water in a clear bottle,

  • medicine and medical equipment,

  • earplugs and earmuffs.

Bringing any item with the exception of clothing, water, and ID badge into the competition room requires prior approval from the Committee. A contestant must submit these items by leaving them in a designated container which will be provided by the staff to their workstation during the Competition.

Between each round, the submitted items will be checked. If there are rejected items, the contestant will be notified and is allowed to resubmit replacements. The approved items will be kept and given to the contestants at the start of each competition day. However, during the contest, any of these approved items may be removed if it is deemed the item’s usage is disruptive to other contestants during the contest.

After each round is over, a contestant must leave the submitted items in the same designated container on their workstation if they want to continue using these items. Contestants are allowed to submit new items or replacements during this time.

At the end of each round, contestants should take all the unsubmitted items with them.

At the end of the final round, contestants should take all items, submitted or not, with them.

Any attempt to bring any other items unlisted above into the competition rooms will be considered cheating.

Regarding food, HPC3 will provide all contestants with an abundance of food. In cases when a contestant would still like to bring in food, they should make sure that they are not noisy or smelly, and are not disturbing for other contestants in any other way. In case of complaints from other contestants during the contest, the food may be removed.

Any electronic or printed materials provided by HPC3 during a competition round may be used by the contestants (e.g., a User's Guide to the Contest System, or any electronic documentation or reference manuals provided in the installed contest environment or on the provided grading system).

Starting the Competition

All contestants must wear their Harvard-issued IDs during the competition.
Each contestant will have a pre-assigned workstation.
Contestants should be in their seats at least 5 minutes prior to the start of the competition.

Contestants must find their assigned computer, sit down, and wait for the competition to begin without touching anything (such as keyboards, mice, pens, or paper).

Clarification Requests

During the competition, contestants may ask questions concerning competition problems, rules, and/or grading. Clarification Requests may be expressed either in English or the contestant’s preferred language.

 

The questions should be submitted using the grading system whenever possible. If this option is not available, either because typing in the contestant’s preferred language is not supported, or due to technical issues, contestants can write the question on a printed Clarification Request Form.

 

Contestants will receive a reply via the grading system, or in writing on the submitted Clarification Request Form.

 

Questions regarding the competition problems should be phrased clearly and answerable with a yes or no.

Questions regarding the competition problems will be answered with one of the following:

  • “Yes”

  • “No”

  • “Invalid Question due to ambiguity with...” – The question is unclear or unanswerable with “Yes” or “No”. The contestant is encouraged to rephrase the question.

  • “Invalid Question due to question content. Speak with...” – The question not related to the problem, rules, or grading. The contestant should find the mentioned party.

 

Additional elaboration of the answer may be provided if it seems that it is necessary.

 

Assistance Requests

Requests not concerning competition problems, rules, and/or grading are known as Assistance Requests. These Assistance Requests should be made by a contestant raising their hand to call the support staff for assistance.

 

The staff members will deliver Clarification Request Forms, help locate toilets and refreshments, and assist with computer and network problems. They will not answer questions about the competition problems. 

Contestants should not:

  • Attempt to fix, debug, or even check for computer or network problems themselves; instead, they should ask for assistance,

  • Leave their seats until allowed to do so by the support staff. 

 

Ending a Round

Warnings will be given at 45 minutes, 30 minutes, 15 minutes, 5 minutes, and 1 minute before the end of each round. Each warning will be given by an audible signal. The end of a round will be announced both verbally and by an audible signal, and the grading system will become unresponsive. At the announcement ending the competition, contestants must immediately stop working (unless they have extra time. See next paragraph) and wait quietly at their desks without touching the computers An additional announcement will be made instructing them to leave their tables and exit the competition room.

 

If a contestant thinks that they should be given extra time for the competition, they should send a Clarification Request either through the contest system or via a Clarification Request Form as early as possible. They should not leave their desk or talk to other contestants after the round ends and should continue to work. The Committee will then decide whether to award the extra time, and inform the contestant of the decision as early as possible. If some amount of extra time is granted, all submissions that are made during contest time and extra time will be graded.

However, note that the following issues will not be accepted as grounds for requesting for extra time:

  • Issues arising from the usage of programming tools, in particular IDEs (e.g. VS Code and Eclipse) and debuggers. Contestants should be competent in the usage of the tools they decide to use. However, members of the technical committee may provide assistance.

  • Issues that are resolved within 10 minutes, unless they happen less than 10 minutes before the end of the contest.

  • The contestant loses a significant amount of time when trying to solve technical issues by themselves.

  • Instances where the contestant did not inform any support staff or make any clarification request on the issue at all.

 

Cheating

Doing any of the following is considered cheating, and may result in disqualification:

  • Using any workstation, computer, or account that is not theirs;

  • Tampering with or compromising the grading system;

  • Attempting to gain access to /root or to any account other than the one assigned to them;

  • Storing information in any part of the file system other than the home directory for their account or the /tmp directory;

  • Accessing any machine on the network or the Internet, other than to access the contest system for usual purposes (e.g. submitting problems, viewing submission results, downloading sample data, submitting Clarification Requests), and calling for the support staff through the system;

  • Rebooting or altering the boot sequence of any workstation;

  • Communicating with other people during the competition, other than the support staff, and/or Committee members;

  • Having any disallowed items on their person during the contest.

 

Disqualifications and Removals

In the case that a competitor oversteps the rules outlined here or in the student handbook, they may be disqualified.
A disqualification results in:

  • All previous and future submissions being ignored and a grade of 0 being given.

  • The contestant no longer being able to attend contest rounds.

  • The contestant not being considered for any awards and not being considered for candidacy to HPC3 2026.

  • In extreme cases, the contestant being expelled from Harvard campus and/or relevant authorities being notified.

Guests who break any rules will be removed from the contest round and prevented from attending any others, in extreme cases, they may also be expelled from campus or reported to authorities.