Contest specifications and general rules


Quick numbers

  • 3 Team Members
  • 3 Teams Per School Maximum
  • 1 Coach / Teacher Per School
  • 1 Computer
  • 3 Hours
  • 10 Problems, solve as many as you can

Technical Details

  • Language in use: Python3.10.12
  • IDE: Visual Studio Code
  • OS Environment: Windows 11
  • Inputs: from standard input / keyboard
  • Outputs: to standard output / console

Day of the contest

  • Solve the problems in any order you wish
  • When you think you have a solution, submit the source code to the Online Judge
  • Source code must be uploaded all at once
  • If you think the problem is not clear, ask for clarification
  • You can bring your own reference papers

Contest Judges

  • Judges will provide you with printed set of problems at the beginning of the contest
  • Each problem will state:
    • Problem Description
    • Constraints (input/output)
    • Sample input / output

Online Judge

  • When you upload your source code using K::OJ, it will run your program against a data set
  • This data set is private and not revealed to you
  • K::OJ will send a minimal response:
    • Correct
    • Compile Error
    • Runtime Error
    • Runtime Limit Exceeded
    • Wrong Answer
    • If the answer is correct, you get points

Score

  • The team that solves the most problems wins
  • You get double points for solving any problem first (speed points)
  • Some problems give partial points for partial correct answers
  • Some problems give full points if the answer is correct and nothing if there was any error
  • There is no penalty for wrong submissions
  • There is no re-submission limit
  • Fastest submission time for is used as a tie-breaker

Strategies for the Contest

  • Skim through all the problems
  • Try to solve the easiest problem first
  • Test your code before you submit it
  • Understand the problem before jumping to the keyboard
  • Don't use the Online Judge as a debugger

Team Distribution

  • All team members discuss the problem
  • One writes Pseudo-code, test cases and think of constraints
  • Two programmers pair together to translate Pseudo-code to functional code:
    • Driver: focus on writing
    • Navigator: focus on observing, guiding and asking for clarifications

Materials You can bring

Any papers for example:
  • Python Guide Sheets
  • Algorithms Examples
  • Previous Problems Examples

Contest Day

  • 1st hour: try to solve easy problems as quick as possible
  • 2nd hour: work together on papers and only submit what you are sure of to avoid losing points
  • 3rd hour: only hard problems left, all team members need to work together

Keyboard

  • You only get one keyboard
  • Try to not let the keyboard idle
  • If burned out, switch roles and yield the keyboard to your other pair

Practice

  • All team members must improve their programming skills regardless of role
  • Teamwork Skills:
    • Get together as much as possible
    • Try to solve training problems
    • Figure out the members roles as soon as possible