SGS Programming Challenge

SGS Banner

Welcome to the St. George's School Programming Challenge!

The problem setters are andy_zhu23 and AustinJiang.

Thanks to wlxsq, Dingledooper, HenryYi, FlowerPollinator, and RandomLB for testing, feedback, and assistance with the problems!

Thanks to Riolku and maxcruickshanks for helping organize the contest!

This contest will be rated for all participants with a rating under 2400.

Before the contest date, you may wish to check out the tips and help pages.

You will have 3 hours to complete the contest. After the contest window begins, you may begin at any time. Once you enter the contest, your personal timer will start counting down, and you will be able to submit until 3 hours from when you started, or until the hard deadline (00:00:00 EDT of October 11th), whichever comes first.

After joining the contest, you proceed to the Problems tab to begin.

Here are the parameters of the contest:

  • Contest duration: 3 hours
  • Number of problems: 5, full feedback (you will see the results of your submissions instantly).
  • Problems will be ordered approximately in increasing difficulty. Reading all statements is still recommended.
  • All problems offer partial marks in the form of subtasks.
  • A maximum of 50 submissions will be allowed per problem.
  • Ties will be broken by the maximum submission time that increased score with no penalties.
  • Scoreboard will be hidden until your window is over. Divulging the contents of the scoreboard to participants who have not finished their window is an offense, the punishments of which are listed below.
  • Rated for opening the contest. Being able to read the problems will cause the contest to be rated.
  • Checkers: unless otherwise specified, standard. The contest will follow the standard convention of having all lines terminate in a \n character, with no trailing whitespace.
  • Interactors: unless otherwise specified, assume that all interactors are not adaptive.
  • It is guaranteed that all problems will be solvable in C++.

Clarification requests for the contest must be routed through the clarification system provided on DMOJ, and not through other channels including but not limited to Discord and Slack. Furthermore, all clarification requests will be handled the way they normally are in IOI. Note that, in particular, clarification requests must come in the form of yes/no questions.

Furthermore, users are forbidden from using multiple accounts or collaborating with others during the entire duration of the contest. Any suspicious behavior during the contest window may result in your rating being impacted negatively. Such behavior includes, but is not limited to:

  • Divulging the contents of the scoreboard to participants who have not finished their window.
  • Registering for the contest with at least two accounts.
  • Participating in the contest with an account that is not your primary account.
  • During the contest window, talking about the contest in more detail than answering a yes/no question about whether one participated in the contest. This includes, but is not limited to, posting spoilers about the contest and public speculation of the contest.
  • Attempting to exploit bugs in the platform to subvert the constraints of the contest.
  • Attacking the judge infrastructure, other contestants, or contest personnel within or after your window.
  • Punishments may include performance being unrated or, for more serious infractions, being forcibly ranked at the bottom of the scoreboard.

At the end of the contest, you may comment below to appeal a judging verdict. In the case of appeals, the decision(s) of DMOJ staff is final.

We have listed below some advice as well as contest strategies:

  • Remove all extra debugging code and/or input prompts from your code before submitting. The judge is very strict — most of the time, it requires your output to match exactly.
  • Do not pause program execution at the end. The judging process is automated. You should use stdin/stdout to perform input/output, respectively.
  • Python users are recommended to use PyPy 2/3 over Python 2/3 when submitting.


Comments are disabled on this page.

  • 3
    Dworv  commented on Oct. 7, 2022, 8:43 p.m.

    Is Rust allowed as a language?