Date: TBD

Time: TBD

Location: TBD

Team Sizes: 1-3 people per team. 

Divisions: Intermediate or Advanced

General Guidelines:

  • Intermediate:  A division for programmers who have recently started programming and/or are in one programming class.
  • Advanced:  A division for programmers with more experience, typically having finished one programming class and are fairly knowledgeable about a specific language.

Note: These are guidelines, not rules. You may choose to sign up for either division.

Cost: TBD

Languages: Java, C++, C#, and Python

Input and Output: Read input from text file and output to screen.


  1. Each team member must be in middle school or high school.
  2. Teams must bring a charger and one computer that has a USB port and can run code in Java, C++, C#, or Python. If you choose to use another language, you must make sure the output will be readable. You also may not be provided with guidance on how to read input from files. 
  3. No internet access is allowed during the contest to prevent people from looking up the solutions to problems, but books, printed code, and anything else on paper is allowed.

Possible Schedule:

9:30: Arrive, check in begins
10:15: Introduction to rules and schedule, get settled in.
10:45: Practice problem, working with reading input.
11:30: Start contest.
12:30: Lunch while the competition goes on.
2:30: Contest ends. Announce winners. Thank participants.
3:00: Go home.


There will be many programming problems, sorted by difficulty from easiest to hardest. All problems will be worth 50 points maximum. Each incorrect submission will reduce the points received from that problem by 5 upon completion. The three teams with the highest scores will receive prizes. If there is a tie in points, the winner is decided by the team that completed their last problem first.



Sample Problem:

You are facing off against a golem. In order to beat it, you must cast a magic spell. You are given two numbers. Your task is to find the largest number possible either by adding or multiplying the two numbers together in order to cast the strongest spell.

Input: The first line contains an integer L. The following L lines will each contain two numbers, N1 and N2.

Output: For each set of two numbers, print the largest number possible through either adding or multiplying the two numbers together.

Example Input:

6 12
1 54
2 2
9 -17
-7 -7

Example Output:


Reading Input Packet:

This pdf will describe how to read a txt file in Java, C#, C++, and Python, using a Mac or PC.

Reading Input Files