1. About Us

Enjoy solving tough problems? Want to sharpen your coding skills?

Every year, the ICPC draws students from over 3,000 universities around the world to rack their brains in intense, mind-twisting competition. Over the past decade, the ICPC Pacific Northwest regional competition has been dominated by UBC and Stanford. Most years, one of our teams advances to the World Finals: an unforgettable week abroad with chances to meet the world's top collegiate programmers!

We are a group of students and alumni from various disciplines who practice algorithmic programming, with the main goal of competing in the ICPC. We also welcome students who wish to simply improve their problem solving, algorithm design and coding skills and collaborate with like-minded people. Contests are hard, but we stand to learn a great deal by challenging ourselves!

Even if you don't make it into the prestigious World Finals, practicing will do wonders for your coding ability, not to mention the ability to ace technical software interviews! Past UBC contestants have landed internships and full-time jobs at companies including and not limited to Google, Microsoft, Facebook, and Amazon. The abstract problem solving aspect of these contests can also serve as a stepping stone towards full-fledged computer science research: past contestants have gone on to complete PhDs at places like Stanford, MIT, and CMU.

What are you waiting for? Join the club!

How it works

This year's World Finals will take place in Moscow, Russia, in June 2020.

The ICPC is a competition between teams. Each team consists of three contestants. The teams are presented with a set of problems. The objective is to solve as many of the problems as possible, under a strict time limit. For each team a score will be determined, based on how quickly problems are solved and how many attempts it took to solve a problem. The team with the best score at the end of the time limit wins the competition.

The Pacific Northwest regional competition is held in mid-November. We send five of our teams -- 15 people -- to this competition to compete with teams from SFU, Washington, Stanford, Berkeley and more. Winning teams from the regional will advance to the North America Championships, and the winners there win a trip to the World Finals, to represent UBC and Canada on the competitive programming stage.

Joining

Please join our Discord or contact one of us directly.

In the beginning of the academic year we hold tryouts. Everyone is welcome to participate, the more the merrier.

We hold regular practice sessions, in which everyone is again welcome to participate. Usually these will be held on Saturdays and Wednesdays. There may also be tutorial sessions for newcomers. Pizza will be served during most of our meetings.

IMPORTANT: Please note that certain requirements must be fulfilled in order for you to be eligible to participate in official competitions. Visit the official rules (be sure you're reading the current ones) and see the Eligibility Decision Tree.

Those interested in competing officially must also:

  • Regularly attend practice sessions

  • Commit to attending regionals in mid-November, and possibly North America Championships in February and World Finals in May

  • Enjoy solving problems of algorithmic or mathematical nature

  • Learn to solve problems under time pressure