Every year, ACM@UVa runs the largest High School Programming Contest (HSPC) in the mid-Atlantic region, and one of the largest in the country.

Contest Date

Saturday, April 13, 2019


If you are interested in sponsoring the contest, and encouraging high school students to pursue computing, please email You can read our sponsorship letter here.


Where do I register?

Registration for the 2019 contest has filled up, but you may still join the waitlist (please do!) here. (As of now) we have a capacity of 36 teams. Note that there is a limit of 2 teams per school.

What do I need to know about registration?

Each team consists of four students and one coach. Registration costs $40 per team.

Is financial assistance available?

We know that the cost of attendance for our competition may be prohibitive for some schools. If your school is interested in participating but is prevented by the cost, please let our HSPC Contest Chair know by email at We hope to be able to find sponsors to support a limited number of teams to attend this year's competition.

Ready for the 2019 Contest?

The 2019 contest will be held on April 13, 2019. Registration has already filled up, but you may still join the waitlist (please do!) here. (As of now) we have a capacity of 36 teams. Note that there is a limit of 2 teams per school.

Contest Logistics


The 2019 competition schedule is the same as the schedule was for 2018, and is listed below. Note that this year, HSPC is not being held on the same day as the Engineering Open House.

  • Teams must register by 9:30am in Rice 130.
  • 8:00 - 9:30a Registration in Rice 130
  • 9:30 - 10:30a Introduction, Rules, and Questions in Rice 130
  • 10:30 - 11:30p Practice Contest with coaches in Mechanical Engineering
  • 11:30 - 12:30p Lunch in Mechanical Engineering
  • 12:30 - 4:30p Contest in the computer labs in Mechanical Engineering
  • 5:00 - 5:30p Awards Ceremony, Wrap-up in Rice 130

Directions and Parking

The events related to the competition are split between three buildings at the University of Virginia Engineering School. We are located on Stadium Road, with parking available behind the stadium just off of Whitehead Road. Registration will take place in Rice 130. Rice is the new Computer Science building and is closest to Whitehead Road.

Please park in the green labeled lots (T4) only. Registration will occur in Rice Hall room 130, the arrow indicates this location, but it is a new building and the map doesn’t sketch its shape.

Frequently Asked Questions

We follow a fairly common set of rules for high school programming contests. See here for details.

For further comments or questions, please email

  • Ubuntu 16.04 with the KDE interface, with all updates
  • g++ 5.4.0
  • Python 3 version 3.5.2
  • Java 8 (openjdk version 1.8.0_121)
  • Emacs 24.5.1
  • Eclipse 3.8.1
  • PyCharm 2016.3.3
  • PC2 version 9.4.1

Note that minor versions of the above may vary, if updates to said software is released before the contest date

The VirtualBox image will be available approximately one month prior to the contest so that individuals can familiarize themselves with it. Coaches will receive an email with the download link.

You can read the practice contest problems from last year's contest: the practice problem and the contest problems.

Past problem sets are available here (the zip archive includes the practice problem, full contest set, sample and judge I/O, and example solutions):

You can also see the latest contest site (what is available to the students during the contest) here, which includes links to the individual solutions.

You can view the scoreboards of the past UVa HSPC contests here.

During the contest, the following will be available electronically:

We will be providing breakfast (to take place during check-in) and lunch.

For the 2016 contest, the prizes were:

  • First place: Raspberry Pi 3
  • Second place: Large board games
  • Third and fourth places: quadcopters
  • Fifth place: small board games

Each team will receive 1 prize per contestant -- for example, four Raspberry Pi 3's for first place, one of each board game for second place, etc.

  • Ubuntu 16.04 LTS
  • 1 (one) computer per team
  • Java 8
  • Choice of Eclipse, gedit, vim, or emacs
  • PC^2 Submission (Multiple classes will be permitted, but they must all be in the same source code file)
  • Standard Input and Output used for all input and output
  • Printing is permitted during the contest (any printed material will be brought to you)
  • Programming languages: Java, C, C++ (the compiler will use C++11), Python 3

If you have any questions, please contact the HSPC staff (

All over the state of Virginia, with a few from Maryland from time to time. You can see a map of the schools that are sending teams to the 2017 contest here. You can see maps of who attended for previous years as well: 2016, 2015, 2014, 2013.