2018 Contest:

The 5th Annual Cornell University High School Programming Contest was held on the afternoon of Friday April 6th, simultaneously at the Ithaca Cornell campus and the New York City CornellTech campus.  A total of 48 teams from 21 schools participated:

School #teams
Academy for Software Engineering 1
Benjamin N. Cardozo High School 1
Bishop Hendricken High School 2
Brighton High School 2
Bronx High School of Science 2
Brooklyn Technical High School 3
Dalton High School 5
East Brunswick High School 2
Half Hollow Hills High School East 5
Ithaca High School 4
John P. Stevens High School 1
Manlius Pebbles High School 1
Nest + M 2
Northport High School 1
Packer Collegiate Institute 1
Pittsford Sutherland High School 2
Princeton High School 1
Stuyvesant High School 8
Trinity School 2
Webster Schroeder High School 2

 

The teams were given 12 problems.  The team solving the most problems wins, with ties broken by a penalty consisting of the total amount of time spent for the solved problems.  The results are as follows (only the 6 teams having solved 8 or more problems are shown by name):

 
Rank Team name #solved penalty
1 Princeton High School 12 699
2 Trinity School 2 9 767
3 Ithaca High School 4 9 912
4 Stuyvesant High School 5 8 633
5 Ithaca High School 3 8 699
6 Pittsford Sutherland High School 1 8 741
7   7 852
8   6 534
9   5 666
10   5 723
11   4 226
12   4 355
13   4 439
14   4 443
15   4 514
16   4 536
17   4 621
18   4 637
19   3 178
20   3 288
21   3 319
22   3 357
23   3 381
24   3 422
25   3 449
26   3 488
27   3 621
28   2 87
29   2 117
30   2 134
31   2 218
32   2 255
33   2 275
34   2 338
35   2 341
36   1 32
37   1 34
38   1 40
39   1 73
40   1 105
41   1 123
42   1 146
43   1 173
44   1 183
45   1 190
46   1 192
47   1 201
48   1 240

 

Countless people provided help putting on this contest.  They include Aidan Fitzgerald, Arnaud Sahuguet, Chris Fouracre, Chris Pardee, Christina Ko, Constantine Vasilevsky, Dandan Lin, Daniel Fleischman, Danny Adams, Diane Levitt, Dimitrios Dogas, Drew Zagieboylo, Emma Clark, Erin Armstrong, Falane Renee Ash, Frederick Deppe, Gordon Campbell, Gurjit Kaur, Haley Bisseger, Haobin Ni, Harpreet Gaur, Jake Lopez, Jolines Contreras, Jose M. Romero, Joselin Campoverde, Juliana Kleist Mendez, Kahalia Stanberry, Kathy Mendell, Kolbeinn Karlsson, Leslie Morris, Lisa Cirelli, Maria Dikun, Matt Burke, Meg Ray, Melissa Chan, Melody Spencer, Mike Zamansky, Mikeyris Pimentel, Nia Daniels, Noushin Iqra, Priyanka Shah, Radhika Kalani, Robbert van Renesse, Sagar Jha, Saundrene Wright, Sharena Tirado, Siqiu Yao, Soumya Basu, Steve Gallow, Vanessa Maley, Veronica E. VanCleave-Seeley, Victor Reis, Xiaochen Wang, Yunhao Zhang.  Please let us know if we forgot to mention you here!  This list does not even include all the wonderful chaperones from the various schools.

We also wish to thank the following institutions who provided funding and support:  Cornell Department of Computer Science, Cornell CIS,, CornellTech, Institute for Computational Sustainability, Women in Computing @ Cornell, CUNY, CSNYC, and HackerRank.

Warm-up Rounds

This year, Cornell ran three week-long online warm-up contests.  After each round Cornell released solutions to the problems with explanations on why these solutions are correct. These rounds were optional but we highly recommended participating in them. These problems are still accessible:

Please note that problems in these rounds are not in order of difficulty (and they're not in the contest).  In this kind of competition teams are not expected to solve all problems.  Solutions are here.  If you have any questions about the solutions, you can contact Daniel Fleischman (df288 -at- cornell.edu).

Practicing:

The teams may use the following programming languages: Java, Python, C, C++, Haskell (others available upon request). The teams will be using an X86 Linux environment.  So you can practice in this environment ahead of time, the environment is available as a VirtualBox virtual machine appliance image.  VirtualBox can be run under Windows, Mac OS X, and Linux.  After you start VirtualBox, go to Import Appliance under the File menu and import the OVA image.  Once the virtual machine is up and running, you can log in: the username and password are both 'contest'.

2017 Contest:

The 4th Annual Cornell University High School Programming Contest was held Friday April 7th. As always, we follow a similar format as the ACM International Collegiate Programming Contest (ICPC).  The rules are posted here. 

This year we had the following schools competing (with a total of 22 teams):

  • Allendale Columbia (1 team)
  • Bishop Hendricken (1 team)
  • Brighton (2 teams)
  • Dalton (1 team)
  • Fairport (3 teams)
  • Half Hollow Hills East (3 teams)
  • Ithaca (3 teams)
  • McQuaid Jesuit (1 team)
  • Nichols (2 teams)
  • Pittsford Sutherland (2 teams)
  • Webster Schroeder (1 team)
  • Webster Thomas (2 teams)

This year we also had a team of three high school teachers (for fun, not for the big prize).

A link to the contest, where you can see the problems, is here.

First prize went to an Ithaca High School team, second prize to a Bishop Hendricken team, and third prize to an Allendale Columbia team.  The teachers team came in fourth:

  1. Ithaca High: Vivek Myers, Jacob Silcoff, and Mrinal Thomas
  2. Bishop Hendricken: Fred Choi, Tony Jiang, and Paarth Tandon
  3. Allendale Columbia: Jingjong (Daniel) Xiang and Rui (Tony) Zhou 

Right after the contest, Prof. Kavita Bala gave a short talk on recognition and deep learning.

WHCU provided some nice coverage.

2016 Contest:

The 3rd Annual Cornell University High School Programming Contest took place on Thursday April 7th.  Programming contest veteran Daniel Fleischman started the event with some stories about participating and team coaching in programming contests.    This year we had 19 teams:

  • Bishop Hendricken (2 teams)
  • Fairport (3 teams)
  • Ithaca (4 teams)
  • McQuaid Jesuit (2 teams)
  • Nichols (2 teams)
  • Pittsford Central Schools (3 teams)
  • Webster Schroeder (1 team)
  • Webster Thomas (2 teams)

First prize went to an Ithaca High School team, second prize to a Pittsford team, and third prize to another Ithaca High School team:

  1. Ithaca High:  Jonathan Gomes-Selman, Jacob Silcoff, Zachary Stillman
  2. Pittsford High: Yiyou Chen, Yizuo Chen, Peng Sun
  3. Ithaca High: Daniel Halpern, James Park, Mrinal Thomas

This year we used Hackerrank to run the contest: https://www.hackerrank.com/contests/cornell-university-high-school-programming-contest/challenges

The solutions, including test cases, are available here.

We got some nice press from WHCU, Cornell Chronicle.

2015 Contest:

In 2014 we organized our second contest on Tuesday April 7th.  With 17 teams we had almost triple the participation of last year:

  • Brighton (two teams)
  • Byram Hills (two teams)
  • Dalton (two teams)
  • Fairport (three teams)
  • Ithaca (three teams)
  • McQuaid Jesuit (two teams)
  • Webster Thomas (one team)
  • Webster Schroeder (two teams)

First prize went to one of the Dalton teams, second prize to a Byram Hills team, and third prize to the other Dalton team.  We also gave prizes for the first three teams to solve any problem.  A team from Webster Schroeder was the first team to solve a problem, followed by teams from Dalton and Byram Hills (tied).  Some stats:

  • All teams used Java exclusively.
  • Two teams solved all 7 problems, one team solved 6, one team solved 5, three teams solved 4, five teams solved 2, four teams solved 1, and one team solved no problems.  Participants can receive feedback on their failed attempts.
  • Problem 1 (Making the Grade) was solved by 13 teams.  Problem 2 (Eakspay...) was solved by 9.  Problem 3 (Frame by Frame) was solved by 4.  Problem 4 (Crushing Confections) was solved by 7.  Problem 5 (Waiting for Change) was solved by 7.  Problem 6 (Cornell Party) was solved by 4.  Problem 7 (Cornell Party -- Retry) was solved by 7.

The programming problems are posted here.  Solutions, test input and corresponding output are posted here, courtesy of Daniel Fleischman.  Feel free to contact Daniel (df288 at cornell dot edu) with questions.

During lunch, Prof. David Bindel gave a talk on difficulties in calculating decimals of pi and various applications.

We got some nice press from Cornell Chronicle.

2014 Contest:

In 2014 we organized our first contest on Thursday April 3rd.  The contest was held in the new Gates Hall on Cornell campus.  Weeks prior to the contest, all participants were provided with a virtual machine image (Ubuntu 12.04, pre-installed with C, C++, Java, Python, Eclipse, and various documentation.  Six teams of two to three programmers competed for a first, second, and third prize.  They were

  • One team from Brighton High School
  • Three teams from Ithaca High School
  • Two teams from West Irondequoit High School

First prize went to a team from Ithaca High, second prize to a team from West Irondequoit High, third prize to a team from Ithaca High, and an Honorable Mention to the other team from West Irondequoit High as they finished close behind the third.

The rules and programming problems are now available, as are solutions provided by Daniel Fleischman (df288 at cornell dot edu)  Daniel is an expert on competitive programming and is happy to provide feedback to the teams.  Here are some stats:

  • All teams used Java exclusively.
  • "Great Expectations" was solved by all 3 teams that attempted it.
  • Three teams solved "Student Identifiers".  A fourth team was very close, but they unfortunately skipped the modulus 1 as a possibility, and the test input had a class of size 1 in it.
  • "Pancakes" was solved by two teams.  A third team made an attempt.
  • "Can you build it" was solved by one team.  Two other teams attempted it.
  • "Postfix Calculator" was solved by one team.  One other team attempted it.
  • "Seek-a-Word" turned out to be tricky.  Four teams attempted it.  A lot of attempts were close but threw "array-out-of-bounds" exceptions.
  • "Roman Numerals" also is a bit tricky to get right.  Lots of cases to think about.  Two teams tried to solve it.
  • "Eating M&Ms" was attempted by just one team, but the solution was too inefficient to run within the required 5 seconds.

Participants can receive feedback on their failed attempts.

During lunch, Professor Sirer presented an introduction to Bitcoin, demonstrating a wonderful application of computer science concepts and also pointed out some problems with the approach.

We got some nice press from Cornell Chronicle.

Organizing Team

  • Gordon Campbell: Chair of Computer Science Dept., Dalton School, NYC
  • Fred Deppe: Ithaca High School Computer Science teacher
  • Daniel Fleischman: Operations Research Scientist at Amazon.  Cornell University Operations Research and Information Engineering Grad
  • Christopher Fouracre: Cornell University CIS IT Support Consultant
  • Diane Levitt: Senior Director of K-12 Education, CornellTech
  • Vanessa Maley: Cornell University Computer Science Event Coordinator
  • Haobin Ni: Cornell University CS Grad student
  • Robbert van Renesse: Cornell University Computer Science Faculty

Steering Committee

  • Gordon Campbell: Chair of Computer Science Dept., Dalton School, NYC
  • Emma Clark: Cornell University CS undergrad, rep. Women in Computing at Cornell
  • Fred Deppe: Ithaca High School Computer Science teacher
  • Daniel Fleischman: Operations Research Scientist at Amazon.  CU ORIE Grad
  • Diane Levitt: Senior Director of K-12 Education, CornellTech
  • Chair: Robbert van Renesse: Cornell University CS Faculty

Sponsors

The event is sponsored by the Department of Computer Science at Cornell University and the Institute for Computational Sustainability at Cornell University.

 

Please reach out to Vanessa Maley with any questions at vsm34@cornell.edu.