CodeSky · Contest prep
CCC Prep: Canadian Computing Competition (Junior & Senior)
The Canadian Computing Competition (CCC) is the University of Waterloo’s programming contest, run by the Centre for Education in Mathematics and Computing (CEMC). This guide explains how it works, how to choose Junior or Senior, and how our Markham students get ready for it.
Book a FREE trial class Our Markham classes
What is the CCC?
The CCC is a programming contest for students with an interest in coding. It is written online, individually, at school, under a teacher who acts as Contest Supervisor. Each level has 5 questions, 3 hours, and a score out of 75 (15 per question). Problems can have subtasks, so a student can earn partial marks for solving an easier version.
Allowed languages: C, C++, Python 2, Python 3 or Java. Any full-time student can take part.
Waterloo CCC: next contest date
- North and South America: Wednesday, February 17, 2027
- Outside North and South America: Thursday, February 18, 2027
Schools register their students before the contest. Dates are from the CEMC; always check the official page for changes.
CCC Junior vs Senior
| Junior | Senior | |
|---|---|---|
| Who it is for | Beginner to intermediate programmers | Intermediate to advanced programmers |
| Questions 1–2 | Straightforward: basic loops and conditions | Basic algorithms: sorting, searching |
| Questions 3–4 | Loops, conditions and counting combined | More advanced algorithms and math reasoning |
| Question 5 | Advanced: recursion, 2D arrays, efficient algorithms | IOI-level question |
Students pick the level that fits their skills, regardless of grade. Our rule of thumb: if your child is solid on loops, conditions and lists but has not yet learned sorting, searching or recursion, Junior is the right level. Senior is the route to the Canadian Computing Olympiad (CCO): about 20 top official Senior participants are invited each spring.
Waterloo CCC 2026 results at a glance
| CCC 2026 | Junior | Senior |
|---|---|---|
| Average score (out of 75) | 42.65 | 15.56 |
| Certificate of Distinction cutoff | 58 | 26 |
| Contestants | 3,421 | 2,439 |
The top 25% of all participants get a Certificate of Distinction. Notice how much lower the Senior average is: Senior is a big step up, and a strong Junior score is a great goal on its own.
How to prepare for the CCC
- Practise past contests. The CEMC’s free CCC Online Grader lets students make a practice account and try previous contests with real judging.
- Write code, not just read solutions. Junior questions 1–3 reward clean loops, conditions and careful input reading.
- Learn the Senior toolkit step by step: sorting, searching, counting, then graphs and dynamic programming.
- Time yourself. Three hours goes fast; practise reading all five questions first and picking the order.
At CodeSky, students work through our CCC Path with a teacher in the room, then move on to Competitive programming (C++) when they are ready for Senior and CCO-style problems. Younger students often start with the Beaver Computing Challenge first.
Official contest information: cemc.uwaterloo.ca/contests/ccc
FAQ
What is the CCC in Canada?
The Canadian Computing Competition is a programming contest run by the CEMC at the University of Waterloo. Students solve 5 problems in 3 hours in C, C++, Python or Java.
When is the next CCC?
The CEMC lists Wednesday, February 17, 2027 for North and South America (Thursday, February 18, 2027 elsewhere).
Should my child write CCC Junior or Senior?
Junior suits beginner to intermediate programmers; Senior suits intermediate to advanced. Students choose regardless of grade. If your child has not yet learned sorting, searching and recursion, start with Junior.
Can my child use Python in the CCC?
Yes. C, C++, Python 2, Python 3 and Java are allowed. The CEMC notes that some hard problems may not reach a perfect score in every language, so strong Senior students often learn C++.
Does CodeSky teach CCC prep?
Yes. CodeSky runs a CCC Path in Markham for the Canadian Computing Competition, plus Competitive programming in C++ for advanced students. Parents can also sign children up for the CCC through CodeSky even if they are not enrolled students. Book a free trial class to find the right starting point.
Try a free class at CodeSky
Bring your child to a free trial class at our Markham studio (9833 Markham Rd #2). A teacher will see where they are today and suggest the right path, whether that is Scratch, Python or contest prep.