2015 WPI High School Programming Contest

In 2006, the WPI Computer Science department committed
to organize a ten-year series of programming contests for High School
students. The full details of past contest events are found in the table
below.

The 2015 programming contest was held on Monday March 9th 2015. See
details below. This was the final occurrence in this ten-year series of
programming contests organized by Professor George Heineman in the Computer
Science Department of WPI.

Past Contest Results

Our first inaugural event was held on March 6 2006 with
eleven teams and thirty-three students participating. In the most recent
event held in March 2015, a total of forty teams from
twenty-seven school districts (representing 124 students) participated.

Format of the contest

Contest Registration

Schools who intend to send a team to the programming contest
must register with WPI
by February 13 2015

Each school may register up to two teams prior to this deadline.
For a list of currently registered schools, click
here

There are a limited number of slots available to
participate in the contest. If our target of 30 teams is met, we will
maintain a wait list of schools that would like to participate. All
registrations will be finalized by February 20 2015

Each team will consist of up to and including
three (3) students. Each team may bring an advisor to the contest

Team members must be enrolled at their schools and must bring to
the contest a signed letter from their high school administration
asserting that all team members are currently enrolled in good
standing

If you need more information, you can contact the Computer Science
Department at 508-831-5357

Contest Schedule

Monday March 9th 2015

8:00 AM

Teams arrive and may use computers to get
familiar with WPI environment. Juice, coffee, & light breakfast
available

8:30 AM

Opening/Organizational Meeting

9:00 AM

Contest Starts!

11:30 AM

Lunch available (students can work & eat at the
same time, but no food is allowed in the labs)

1:00 PM

Contest Ends

1:15 PM

Awards Ceremony

1:45 PM

Conclusion of Event

Each team will have access to a single PC computer running
Windows XP. The programming environments
are Microsoft Visual Studio C++
and Eclipse 3.5

Teams may use their own reference material during the contest.
Examples include language manuals, textbooks, or other printed
material. Teams may not bring their own calculators, computers, or
other electronic media

Contest Regulations

The contest will be
composed of twelve separate problems. There is
no domain-specific knowledge needed to solve these problems

Solutions may be coded using either C, C++, or
Java. The official Java version used by the Judges is JDK 1.5

Sample input data will be provided for each problem, together
with the proper output to produce. Programs will receive ASCII input
and produce ASCII output

Once the contest starts, teams shall not receive any outside
assistance on the programs. This includes browsing the Internet,
eMail, cellular phones, instant messenger, or any other form of
electronic communication. Teams shall not discuss any problem or
solution with their team advisor. Teams shall not discuss the
contest with other teams. Teams shall not attempt to interfere with
the progress of other teams. In short, each team must work in isolation

Team advisors can only observe the contest and shall not help
their teams in any way

Any violation of contest regulations will result in the
disqualification of the team. All decisions are final

Teams may electronically submit a solution (called a submission) foreach problem any number of times. However, while a submission is
being judged for a specific problem, the team will be unable to
submit a new submission to that problem until the judges have judged
the submission

A judged run occurs when a judge evaluates a submission
on a specific problem using private input data that is never seen by
the contestants. If a judge considers a run to be successful (that
is, it produces correct output using the private input), the
submission is judged "P0: Correct". Once a
successful submission has been received for a specific problem, the
team will not be able to resubmit for that problem (obviously!)

If the submission is considered
unsuccessful, it is judged "E*: Specific Error".

"E1" is used for programs that
cannot be compiled by the judges and is language-specific. For C
and C++, the program may conform to the language but cannot
be properly compiled.

Each submission is executed for thirty (30) seconds. If
no output appears within this time period, the judge considers the
program to be a non-terminating program and scores it as "E2".

The code "E7" is reserved for submissions that improperly
access functionality that the judges determine to be disallowed
(such as submissions that access the file system, spawn system
threads, attempt to send email, or otherwise access operating system
or network system functionality).

The code "E6" reflects the decision of the judge that the
submission produces correct results that are simply formatted
incorrectly. Pay attention to all details regarding formatting!

When a team fails to succeed on a given
submission, the team can choose to rewrite the solution entirely, or
even change languages; a team is under no obligation to reuse
earlier failed submissions

All judge decisions
are final. Teams must remember that the submission is being judged
on private data known only to the judges

Teams may submit written clarifying
questions to the contest judges regarding the contest problems. All
questions, regardless of their nature, will be answered in written
form. If the judges determine that an error exists in a problem
statement, a clarification will be issued and be made available to
all teams. If no error exists, the answer to the clarification will
only be made available to the team that submitted it

Contest Scoring

All judge decisions for each submission are final

The contest director is responsible for authorizing the
overall ranking of teams once the contest completes. The decisions
of the contest director are final