Final Contest Fall 2022

Contest Rules

The contest is divided into two divisions: division I; and division II.

You should pick whichever one suits you better and you are not allowed to participate on both divisions, so pick one and stick to it. The two divisions will contain different problems and prizes for the top participants in each division.

Note that most contest problems will have appeared before in other competitions from around the world, we won’t have original problems in our contests unless otherwise mentioned. You shouldn’t try to search for the original problem, since this would be cheating. You are also not allowed to use tools like github copilot or chatGPT.

Before the contest starts

If you have participated in one of our sessions in the past you can skip the following steps.

  • You will need to have an account on CodeForces in order to participate. Go to https://codeforces.com/ and click on *Register* on the top left to do so.
  • Once you have an account, go to the Princeton Competitive Programming group on codeforces here and click on "Join" on the right.

Log in to your codeforces account and follow these steps:

  • Add your name and codeforces username to this spreadsheet.
  • Decide whether you want to participate in the Division I or Division II contest. Please pick the one that suits you better, if you have never been to one of our past Princeton competitive programming sessions and have no or little experience in competitive programming, choose Division II, otherwise choose Division I. You are not allowed to change divisions after you pick one.
  • Go to our codeforces group page and click on "Register" next to the division you picked. You should see a " Fall 22 - Div. 1 - Week #12 - End of Semester Contest" for Division I and " Fall 22 - Div. 2 - Week #12 - End of Semester Contest" for Division II.

The contest starts at 5:10pm and ends at 7:10pm. Good luck!

During the contest

Once the contest starts, you will be redirected to the contest page (if that doesn't happen click on "Enter" next to the contest on the codeforces group page). Here are some things to keep in mind:

  • The problems are sorted by expected difficulty, so problem A is no harder than problem B, and B no harder than C, and so on.
  • To work on a problem first click on the problem and read the problem statement carefully. You will have to implement a solution in your favorite programming language (for example, you can use Java, C/C++, Python, Pascal and more) that reads some input from standard input and outputs something to standard output. The format of the input and output, as well as the restrictions on how large the input can be, are specified in the problem statement. You will also see some example inputs and expected outputs, that you should use to test your solution. When you think you have a solution, you can choose your language, upload your submission file and click on "submit". When you submit your program is ran with many different inputs (not just the example ones) and its output is compared to the expected one. If your program produces all the right outputs in the allotted time, then you will get an Accepted verdict, which means you have successfully solved the problem.
  • The problems are not original, they have showed up in other contests from around the world and were slightly modified. You shouldn't try to search for the original problem, since this would be cheating. You are also **not** allowed to use tools like github copilot or chatGPT.
  • The scoreboard ranks students by number of solved problems. To break ties, codeforces sums the number of minutes taken to solve each problem, plus 10 minutes per incorrect submission to an accepted problem, whoever has the least such number is ranked first. The scoreboards are available here: Division I and Division II.

If you have any questions during the contest ask Pedro (me), he (I) is (am) at the front of the room.

Prizes

Here is the list of prizes

Since we have offered similar prizes before, we might switch up the order of prizes to prevent awarding someone a prize they have gotten in the past.

We’ll also award an extra fun prize to a participant in either division I or II that completes a secret challenge, to be revealed at the end.