Catlin Gabel Fall Programming Contest 2018

In collaboration with TeamsCode, Team 1540 The Flaming Chickens would like to present the Catlin Gabel Fall Programming Contest 2018. Over the course of six hours, teams of one to three students compete in coding challenges, working with their teammates to achieve the highest overall score. There’s a catch: teams are only allowed to use one computer for their coding. The top three teams will be awarded with money prizes, and all participants will be provided with free lunch.

Time: November 17, 2018, 9:45AM – 3:00PM

Location: Catlin Gabel School, 8825 SW Barnes Rd, Portland, OR 97225

Team Size: 1-3 people per team (A solo competitor may register to be placed on a large team with other, random individual competitors)

Cost: Free!

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

Divisions: Intermediate and Advanced

Prizes (For top 3 teams in each division):

Advanced: $250/$150/$125

Intermediate: $100/$75/$50

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.


9:45: Arrive, check in begins.

10:00: Introduction to rules and schedule, get settled in.

10:45: Practice problem, working with reading input.

11:30: Contest begins.

12:00: Lunch while the competition goes on.

2:30: Announce winners. Raffle.

3:00: Go home.


  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 ensure that the output will be readable by judges.

  3. No internet access is allowed during the contest, but books, printed code, and other paper notes are allowed.

Scoring and Prizes

Overview: There will be a multitude of programming problems, sorted by difficulty from easiest to hardest. Teams will be ranked according to the overall points they score, with ties being broken in favor of the team with the lower time score. Each problem is worth a different number of points.*

To get all the points for a problem, all the test cases need to be solved correctly. Partial points are awarded for programs which pass some, but not all, of the test cases.**

A team’s time score is calculated by summing the number of minutes after the start of the contest of each problem’s latest submission. Each problem can be attempted as many times as a team would like; only the best submission will be scored. However, every submission after the first one will add a certain number of minutes to your time score.***

The three highest ranked teams in each division will receive prizes.

*To be precise, problem N is worth a total of 120 + 10∙N points. Thus, a perfect score is 3000 points. For example, problem 10 is worth 120 + 10∙10 = 220 points.

**If a team answers C (0 ≤ C < T) out of T test cases correctly on a problem worth P points, then the points awarded can be given by the formula: 0.5∙P∙C / ( T - 1 ). Thus, there is a large bonus (half the points!) for completely solving the question.

***Every attempt after the first one on problem N will add N minutes to your time score. For example, retrying problem 3 will add 3 minutes to your time score, and retrying problem 15 will add 15 minutes to your time score.

Event Partner: