2019 ICPC Northeast Regional - Quebec and Beyond


The School of Computer Science is excited to host a regional qualifier for the International Collegiate Programming Contest on Saturday October 26, 2019. Open to all educational institutions in US and Canadian that are in close proximity.

Location: McGill University, Trottier Bldg, 3630 Rue University, Montreal, QC H3A 2B3

Tentative schedule of events:

8:00 – 9:00 AM: Registration in the Trottier Building Atrium
8:00 - 8:30 AM: Open lab time for Programming Contest teams
8:40 - 8:50 AM: Welcome and instructions in TBD
9:00 - 3:00 PM: Programming Contest
3:15 - 3:30 PM: Awards ceremony

*** Register here for McGill University ICPC Regional Qualifier ***

What is ICPC?

The International Collegiate Programming Contest (ICPC) is a multi-tier, team-based programming competition headquartered at Baylor University. The contest involves a global network of universities hosting regional competitions that advance teams to the ICPC World Finals.

Participation has grown to several tens of thousands of the finest students and faculty in computing disciplines from more than 2 thousand universities from over 91 countries on six continents. The contest fosters creativity, teamwork, and innovation in building new software programs, and enables students to test their ability to perform under pressure.

Quite simply, it is the oldest, largest, and most prestigious programming contest in the world.

When is registration?

Initial registration is open until midnight on October 15, 2019 to all educational institutions interested in registering at least one team. Institutions interested in sending multiple teams (up to a maximum of 2) must wait until the extended registration period beginning Oct. 16, 2019.

Extended registration will run from October 16 - 24, 2019 . During this extended period, additional teams will be accepted as space permits.

How many teams can compete?

The School of Computer Science can comfortably host up to 12 teams.

What is the cost to attend the 2019 ICPC Regional at McGill University?

No fee!

What is the deadline to sign up for the ICPC Regional at McGill University?

Initial registration: October 11 - 15, 2019. Extended registration: October 16 - 24, 2019

The contest will be held on October 26, 2019.

Where will the Programming Contest be located?

Trottier Bldg, 3630 Rue University, Montreal, QC H3A 2B3 on 3rd Floor, Labs 3110 and 3120

What is the Programming Contest environment?

Ubuntu 18.04

What programming languages will be permitted?

Following the ICPC Programming Contest rules, the following languages will be permitted: C (gcc), C++ (g++), Python 2, Python 3, and Java.

External access to the internet is not permitted. Local web traffic will be permitted to access supporting programming language documentation (i.e. JavaDocs).

Any other competition restrictions?

Teams are limited to 25 page document which is a pdf that teams can create themselves including whatever they want to put as long as it is in font legible to anyone with reasonable eyesight.

The students should be aware that they are not allowed to browse the Internet, not on their computer and not on their phones/tablets, with the exception of Javadocs and manual pages for C/C++ and Python.

Additional helpful tidbits for all competing teams.

Possible pitfalls to avoid when trying to compile code for regional final problems. As well, we suggest teams review the following help page http://open.kattis.com/help:

  • If you are using C/C++, make sure to compile using the options that Kattis uses (see open.kattis.com/help for details). [We did have one solution that ran fine when compiling straight with g++ and default options but through Kattis it compiled but segfaulted when running some tests.]
  • If you are using Python (2 or 3), make sure to put the shebang line (#!/usr/bin/python or #!/usr/bin/python3) at the top to make sure Kattis knows which version you are using.
  • Regardless of language, if you use any exit calls, make sure they produce exit code 0 (i.e. System.exit(0) or the like), or else Kattis will say you have a run-time error (even if you print the correct output first).