IPSC Logo

Internet Problem Solving Contest

IPSC 2009 Rules

This document contains detailed rules for IPSC 2009.


Introduction

The IPSC is an online problem solving contest for teams consisting of up to three people. Several problems will be published at the beginning of the competition. Each problem consists of a problem description and two input data sets. To solve a problem you will have to compute correct output data for the given input data sets. Usually this means that you will write a program that solves the problem, but you may produce the output by hand or in any other way. Only the correctness of your output data will be judged.

The winners will not be awarded any valuable prizes – of course, except for the bragging rights. The contest is organized in order to compare your problem-solving skills and to have fun. Therefore all participating teams are supposed to obey the rules and the spirit of fairness.

Date and Duration

The contest will take place from May 30, 2:00 pm CEST to May 30, 7:00 pm CEST.

Each team willing to participate must register in order to be allowed to participate. Registration will be open until the end of the contest. (New registrations during the contest will be processed at least once every 15 minutes.) Registration forms will be available at IPSC 2009 Online Registration web page starting Apr 20, 2009.

Teams and Divisions

Each team should consist of at most three people with no restrictions to age or education. There are two divisions: secondary school division (all team members should be students of a secondary school or a school of the lower educational level) and open division (no restriction). All teams that register for the secondary school division will also be ranked in the open division.

We will report results in both divisions separately. We will report separate results for one-person teams only.

Computing Environment

During the contest, each team may use any number of available computers for programming and computing the output data. The team can use any compiler or interpreter together with its standard libraries. (Examples include: Pascal, C, C++, Java, Basic, Smalltalk, Lisp, Logo, Perl, Python, etc.) Besides compilers and interpreters, it is also allowed to use other necessary tools such as an editor, a debugger, an IDE, a spreadsheet, an e-mail client or a web browser.

Using pre-written code is OK as long as the code is authored by the team members only. The team may use any printed or written material, and consult public online resources (such as MathWorld and Wikipedia). It is also allowed (and advised) to bring meals and drinks to your computer room if it does not violate rules stated by your local authorities.

(Note that it is no longer forbidden to use systems for symbolic computation (e.g. Mathematica, Maple, Matlab) and special libraries (e.g. LEDA). Anyway, we don't feel that any of these tools would help you much.)

During the contest it is strictly forbidden to communicate with people other than your team about issues that concern solving the problems. Violating this rule may lead to disqualification.

Conduct of the contest

At least six problems will be published. For each problem, two data sets (one easy, one difficult) will be published. The problem statements will be in English. During the contest, all communication between IPSC and contestants will be in English (you may use Slovak/Czech if you want to). If you are not fluent in English, you can invite someone to help you with translations.

The outputs produced for given data sets are submitted for judging. Each submitted output is called a run. Each run is judged as accepted or rejected, and the team is notified of the results. If there is some technical problem with the received run (e.g. a missing header), the run is excluded from the judging process and the team is notified. A data set is solved if the team has submitted an accepted run for this data set.

If you think that the problem statement is ambiguous or that there are bugs in the test data, you may submit a clarification request. If we agree that an ambiguity or an error exists, we will notify you. If the issue is important, a global clarification will also be published.

The organizers reserve the right to disqualify any team without specifying the reason. (A team may be disqualified for breaking the rules, cheating and any other activity that jeopardizes the IPSC contest.)

In addition to the problemset as described above, special tasks with special scoring may be published.

Scoring

Teams are ranked according to the most points received. Teams which receive the same number of points are ranked by least total time. A team receives 1 point for each easy data set solved and 2 points for each difficult data set solved.

The total time is the sum of the time consumed for each solved data set. (There is no time consumed for a data set that is not solved.) The time consumed for a solved data set is computed as follows:

Suppose you succesfully submitted your solution for the data set T minutes after the competition started. Let R be the number of your previous (rejected) submissions for this data set. Then the time consumed for this data set is computed using the formula:

T + 10 * R * (difficulty of the data set)

where the difficulty is 1 for easy and 2 for hard data sets.

There may be some special tasks that are scored in a different way. A canonical example is that solving a special task doesn't alter your points, but it decreases your total time. If there will be some special tasks, their problem statements will contain an accurate description of their scoring.

e-mails
questions: ipscreg(at)ksp(dot)sk
webmaster: webmaster(at)ksp(dot)sk