Posted by Noah Weninger

The University of Alberta Programming Contest is an opportunity for university, college, and high school students in Alberta to show off their knowledge and skill in a programming competition.

Students will test their knowledge of algorithms and data structures with a set of programming puzzles requiring problem-solving, programming, math, and teamwork skills.

Two levels of competitions will be held, one for those with less experience to algorithms and one for students who have had prior exposure to contests or are in their later years of university.

The contest is free of charge; lunch will be provided to competitors at the U of A location.

Time and Location
Posted by Answer

Saturday, March 11, 2023.

Computing Science Centre (CSC), Room 1-59, University of Alberta.

  • 10:00-10:45 Contest Warm-up
  • 11:00-3:00 Contest
  • 1:00 Pizza Served
  • 3:00 Solution Discussion

I will request logins for our Linux machines for those who do not have a CCID. However, to be safe, if you do not have a CCID, I suggest you bring a laptop with the tools to compile and/or run programs written in the supported language of your choice.

Other Information
Posted by Ian DeHaan

Contest Format: Teams of 1 to 3 compete to solve a variety of programming challenges. These are similar to ones found on Open Kattis.

For good practice with the mechanics of this contest, try solving and submitting this easy problem on Open Kattis. Try solving a few more interesting ones for more practice.

Input from standard in, output to standard out (like on Open Kattis).

Each team is limited to using one computer during the contest. You are not allowed to switch machines during the contest without permission from the on-site contest director. Your team may use a laptop instead of a lab machine if you prefer.

You may use any online resource you would like provided you treat it as a read-only resource. No posting questions to discussion forums, no sending emails, etc.

Misc. / FAQ
Posted by Joseph Meleshko

Disclaimer: This page may change a bit before the contest. Check back here by March 9 to see if things change.

  • Can I/we compete remotely?
    Yes, but U of A students are strongly encouraged to show up in person. Others are welcome too. If there are prizes, they will only be available to those who participate in person.
  • Which languages are supported?
    The ones listed here: https://uapc23d1.kattis.com/help

You are encouraged to submit solutions to a few easy problems to Open Kattis in the language(s) of your choice before the contest. This is so you understand the judging platform.

Posted by Arseniy Kouzmenkov

Register using the following Google Form.

Cutoff is 7pm on Thursday, March 9.

Email zacharyf@ualberta.ca if you have further questions.

Posted by Brandon Fuller

Free Pizza

Posted by Jason Cannon

All amounts listed below are the totals per team and will be given in the form of VISA gift cards. Prizes are subject to change during the planning stages of the event.

Division 1
  • First Place - $300
  • Second Place - $180
  • Third Place - $150
Division 2
  • First Place - $210
  • Second Place - $180
  • Third Place - $150
Grade School
  • The highest placing grade school team will receive $150. If there are grade school teams in both divisions 1 and 2, the decision on which team receives the prize will be left to the contest organizers. In the event a grade school team also ranks among the top 3 in their division, they will be given the greater of the grade school award and the ranking award. The contest organizers will then use their discretion to disperse the remaining awards.
Fun Awards
  • A few fun awards are planned as well. Think of them like bonus stars handed out at the end of a Mario Party game!
Posted by Johnson Wu

We encourage you to work in teams of three, but you may compete individually or in a team of two.

There will be two divisions: Division 1 is intended for people with some problem-solving experience and Division 2 is intended for people with less problem-solving experience.

Division 1 Eligibility Criteria
We will adopt the same cutoffs as the official ICPC. See here for their eligbility flowchart. Anyone who passes this criteria can register for Division 1: all team members must qualify. Grade school students are always eligible for Div 1. If you fail the criteria but only by "a bit", you can email the contest organizer (Zac Friggstad) to ask for an exception. For example, perhaps your studies were delayed or you have spent a long time in internships.

Division 2 Eligibility Criteria
The eligibility criteria is a bit different this year and is tailored more around seniority and experience. To compete in division 2, all members of your team must:

  • Be within in their first two years of undergraduate studies, or in grade school.
  • Not have competed in more than two Alberta-based programming contests, which include previous UAPC contests, the Rocky Mountaion Regional Contest (RMC), the Alberta Collegiate Programming Contest (ACPC), the Lethbridge Collegiate Programming Contest (LCPC), and the Calgary Collegiate Programming Contest (CCPC).

The second requirement is strict. There may be exceptions for the first one, for example if you are a 3rd year student but the first two years were spent in the Faculty of Arts then you may be considered eligible for Division 2. For questions about eligibility, email the contest organizer (Zac Friggstad).

In each division, the winning team is the one that solves the most problems. Ties are broken by penalty points.

Penalties points are calculated as follows. For each problem that is accepted, you receive M + 20*W penalty points where M is the number of minutes from the start of the contest before your first accepted verdict for this problem and W is the number of incorrect submissions for this problem before your first accepted verdict.