Welcome to the University of Calgary Problem Solving Club website. If you enjoy programming, solving problems, and want to practice coding faster, more efficiently, and with fewer bugs, this is the place to be! We meet every Wednesday night from 6:00-7:30pm in MS 160 for coaching and practice. Saturday practice contests are also held regularly. To join the club, just join our mailing list.

Join mailing list

Executive Position Applications

Interested in becoming a PSC executive? You will learn how an organization works internally, how to plan and prepare for events as a team, network with sponsors, and earn CCR hours. From working with the CPSC department to hosting workshops, you’ll pick up many new skills as an executive.

As an executive, you will attend weekly Wednesday meetings, aid in preparing for programming contests (CCPC & ACPC), help new members get settled in, and learn the ins and outs of what makes us the Problem Solving Club. Along with that, you can help out with workshops, and possibly work on our website, leaderboard, or anything else that you are interested in.

Please apply by January 31, 2017 in order to be considered for a position.

Apply now

Wednesday Meeting - Dynamic Programming

This Wednesday, November 16, Dr. Hoyer will be teaching a session on dynamic programming.

Dynamic programming problems are quite prevalent in both programming contests and in technical interviews at companies like Facebook, Google, Microsoft, etc., so having a good understanding will make you really stand out.

To give perspective, there were two dynamic programming problems in the last ACPC, and the top 3 teams were the ones who were able to solve those problems. Understanding how to solve these problems might make the difference between placing 15th and in the top 3.

Alberta Collegiate Programming Contest 2016 Registration

Registration for the ACPC is now open. We are hosting two divisions so all levels of experience are welcome. Space is limited, so sign up early! The deadline for signing up is Wednesday, October 12. A big thanks to Arcurve for sponsoring this contest.

Register Now


CCPC 2016 Results

The CCPC turnout was a huge success. To our surprise, the entire event sold out with a total of 150 participants. Thank you Synopsys for sponsoring and helping us organize the event.

The winner for Division 1 was team Too Cool to Have a Name, and in Division 2, the winner was team Anesun.

Div 1 Results Div 2 Results


From left to right: Tyler Sims (Synopsys),Tony Cai, Victor Zheng


From left to right: Tyler Sims (Synopsys), Sunny Nagam, Anna Verkhovskaya, Wesley Tang

CCPC 2016 Registration Now Open

Hello Everyone,

The CCPC is just around the corner! This year we are hosting 2 divisions so all levels of experience is welcome. Registration is free. Lunch will be provided and Synopsys is sponsoring the contest. So don't hold back and sign up before Thursday, March 10.

Register Now


CPSC 331 Midterm Review

On Wednesday, October 28th we'll be hosting a CPSC 331 midterm review session. If you're confused about loop invariants, proving run-times and algorithms, definitely swing by. See you there!

ACPC 2015 Wrap-up

Thank you all for attending 2015 ACPC, it was a ton of fun for us to set up. We hope you enjoyed it as much as we did!

Congratulations to the winners of Division 1, team Chocolate Truffle, who solved 7 problems.

As for Division 2, congratulations to team Last Place for taking first place and solving all of the problems. Got to love the irony of their team name.

Div 1 Results Div 2 Results
World finals team

From left to right: Wenli Looi, Modan Han, Jay Gohill (Arcurve)

ACM-ICPC World Finals 2015 in Morocco

Team UCalgary 3 competing in the World Finals. There, they were given 5 hours to solve 10 programming problems in C, C++, or Java. Their solutions must take test data as input and then output the correct answers for every test case. The team that solved the most problems with the least amount of time penalties wins. For examples of programming contest questions, check out:

Practice World Finals
World finals team

From left to right: Karl Augsten, Wenli Looi, Darko Aleksic, Aryaz Eghbali