Dept. Info
Programming Contests



Programming Competition


Contest Problems and Solutions

March 24, 2017

There were nine problems in the 2017 Programming Contest.  The first seven were programming problems and the last two were Challenge Problems.

Below you will find a brief description of each of the problems. By following the link for the problem you will find a more complete description of the problem including a specification of the requirements and effects of the program and examples.  For the programming problems, a Java solution and the test data that were used to test submitted programs to each problem are available as well.  For the class-based problems, the source files for the (supplied) compiled classes are also provided.  For the Challenge Problems, links to a description of the bug and to the web page used during the test are also available.

Dr. David Levine of the Computer Science Department drafted the problem statements and wrote the various solutions that we have made available.  He was assisted by Dr. Steve Andrianoff, but all blame for any error goes to David.

Problem 1:  Information Leak (PDF)

Given two pieces of unclassified information, "release" a classified secret.

Java solution to Problem 1:  

Test data for Problem 1: data1

Problem 2:  Salted Passwords  (PDF)    A CLASS BASED PROBLEM

Given a password file, determine if various users should be allowed access.

Java solution to Problem 2:

Test data for Problem 2: data2

Java Files for the class:  

        API for the class:  PasswordFile.html 


Problem 3:  Iffy Weather (PDF)  

Given data from unreliable weather reporting stations, report average temperatures in a region.

Java solution to Problem 3:  

Test data for Problem 3: data3


Problem 4:  Enigma (PDF)  

Emulate an Enigma machine encoding a message.

Java solution to Problem 4:  

Test data for Problem 4: data4


Problem 5:  Two Alarm Fires (PDF)  

Find the two closest stations to the location of a fire in a grid-based world.

Java solution to Problem 5:  

Test data for Problem 5: data5

Explanation of judging issues concerning this problem

Problem 6:  Strimko (PDF)    A CLASS BASED PROBLEM

Strimko are Sudoku-like puzzles where the "sectors" are simply nodes connected by "strings"; solve them!

Java solution to Problem 6:  

Test data for Problem 6: data6

Java Files for the classes:   

        API for the classes:  StrimkoBoard.html  


Problem 7:  Squarish Numbers  (PDF)   

Perfect squares are squarish; so are numbers that are a perfect square away from their nearest perfect square.   Got it?   Good, now count how many there are!

Java solution to Problem 7:  

Test data for Problem 7: data7

Problem 8:  Redact   (PDF)   A TESTING PROBLEM

We need to hide certain information within a string, but apparently we can't do it well.

Note that since this is a testing problem, the real challenge is to determine the bug in the judge's code - which is available as an applet on a web page only.

Description of the bug: Redact Bug 

Actual contest web page: Redact Applet  (Not yet linked)


Problem 9:  Mileage Cheats   (PDF)   A TESTING PROBLEM

We need to check that the mileage claims of our salespeople correspond to some semblance of reality.

Note that since this is a testing problem, the real challenge is to determine the bug in the judge's code - which is available as an applet on a web page only.

Description of the bug: Mileage Cheat Bug  

Actual contest web page: Mileage Cheat Applet (not yet linked)

For additional information, please contact:

                  Dr. Steven K. Andrianoff, Contest Director
                  Department of Computer Science
                  St. Bonaventure University
                  St. Bonaventure, NY   14778
                  Phone: (716) 375-2053
                  FAX: (716) 375-7618

� Copyright St. Bonaventure University 2011 All Rights Reserved