Canadian Computing Competition
(Last modified
Monday March 13, 2006)
This provides ALL past Stage 1 CCC problems, solutions (using Holt Software Turing or Ready: Java) and data files (both input and output). All of these are of course UNOFFICIAL. All problem solutions were written by Chris Robart at Milliken Mills High School., except for the following:
Please email me if you find any errors, or have easier-to-understand solutions. Thanks.
The Official website is CCC.
| * | an average grade 11 student should get this |
| ** | an average grade 12 student should get this |
| *** | an good grade 12 student MIGHT get this |
| **** | the best grade 12 student MIGHT get this if given enough time |
| ***** | the teacher will get this after several days |
| 2006 Problems | Topics Involved | Rating | Input Files | Output files |
| Junior Problems | ||||
| J1 Canadian Calorie Counting | simple decisions | * | 1 2 3 4 5 | 1 2 3 4 5 |
| J2 Roll the Dice | loops and counting | * | 1 2 3 4 5 6 | 1 2 3 4 5 6 |
| J3 Cell-Phone Messaging | strings and decisions | * | 1 | 1 |
| J4 Tough Being a Teen | array handling | ** | 1 2 3 4 5 6 7 8 9 10 | 1 2 3 4 5 6 7 8 9 10 |
| J5 CCC Othello | 2D array handling | ** | 1 2 3 4 5 6 7 8 9 10 | 1 2 3 4 5 6 7 8 9 10 |
| Senior Problems | ||||
| S1 Maternity | basic string handling | * | 1 2 3 | 1 2 3 |
| S2 Cipher
Texts S2 Cipher Texts v2 |
string handling (V2 - inferring the 27th from 26 given requires a more complex approach) |
** | 1 2 3 4 5 | 1 2 3 4 5 |
| S3
Tin Can Telephone S3 Tin Can Telephone (Vec) |
geometry calculations (Vector approach) |
*** | 1 2 3 4 | 1 2 3 4 |
| S4 Groups | 2D array (matrix) manipulation | *** | 1 2 3 | 1 2 3 |
| S5
Origin of Life S5 Origin Of Life (V2) |
2D arrays, queues and complex algorithm (find all Edens approach) |
**** | 1 2 3 4 5 | 1 2 3 4 5 |
| 2005 Problems | Topics Involved | Rating | Input Files | Output files |
| Junior Problems | ||||
| J1 Cell Sell | arithmetic, decision structures | * | 1 2 3 | 1 2 3 |
| J2 RSA Numbers | arithmetic with nested structures | * | 1 2 3 | 1 2 3 |
| J3 Returning Home | simple array and string processing | * | 1 2 3 | 1 2 3 |
| J4 Cross Spiral | moving around a 2D array | *** | 1 2 3 4 5 | 1 2 3 4 5 |
| J5 Bananas J5 Bananas (non-recursive) |
indirect recursion or
simple iteration (no recursion needed) |
*** | 1 2 3 4 | 1 2 3 4 |
| Senior Problems | ||||
| S1 Snow Calls | basic string handling | * | 1 | 1 |
| S2 Mouse Move | basic structures | * | 1 2 3 4 5 | 1 2 3 4 5 |
| S3 Quantum Operations | 2D array (matrix) manipulation | ** | 1 2 3 4 5 6 7 8 9 10 | 1 2 3 4 5 6 7 8 9 10 |
| S4 Pyramid Message Scheme | tree height / 1D array manipulation | *** | 1 | 1 |
| S5 Pinball Ranking Slow- Insertion sort Fast - Binary Tree Fast -Merge Sort |
sorting exercise
(using insertion sort, a binary search tree or merge sort) |
*** | 1 2 3 4 5 6 7 8 9 10 | 1 2 3 4 5 6 7 8 9 10 |
| 2004 Problems | Topics Involved | Rating | Input Files | Output files |
| Junior Problems | ||||
| J1 Squares | reals and integers | * | 1 2 3 4 5 | 1 2 3 4 5 |
| J2 Terms of Office | simple arithmetic (loops and mod) | * | 1 2 3 4 5 | 1 2 3 4 5 |
| J3 Smile with Similes | nesting loops | * | 1 2 3 4 5 | 1 2 3 4 5 |
| J4 Simple Encryption | strings and character manipulation | ** | 1 2 3 4 5 | 1 2 3 4 5 |
| J5 Fractals | geometry, array processing | *** | 1 2 3 4 5 | 1 2 3 4 5 |
| Senior Problems | ||||
| S1 Fix | decisions and built-in string functions | ** | 1 2 3 4 5 | 1 2 3 4 5 |
| S2 Top Yodeller | simple 1D array processing | ** | 1 2 3 4 5 | 1 2 3 4 5 |
| S3 Spreadsheet | simple 2D arrays and String processing | *** | 1 2 3 4 5 | 1 2 3 4 5 |
| S4 Space Turtle | ugly geometry problem | **** | 1 2 3 4 5 | 1 2 3 4 5 |
| S5 Super Plumber | 2D arrays & dynamic programming | **** | 1 2 3 4 5 | 1 2 3 4 5 |
| 2003 Problems | Topics Involved | Rating | Input Files | Output files |
| J1 Trident | character graphics | * | ||
| J2 Perfect Picture | simple arithmetic (div and mod) | * | ||
| J3/S1 Snakes and Ladders | simple counting, decisions | * | ||
| J4/S2 Poetry | simple strings, decisions | ** | 1 2 3 4 | 1 2 3 4 |
| J5/S3 Floor Plan | 2D array, recursion, largest of 1D array | *** | 1 2 3 4 5 | 1 2 3 4 5 |
| S4 Substrings | strings | *** | 1 2 3 4 5 | 1 2 3 4 5 |
| S5 Trucking | graph theory, Prim's algorithm | **** | 1 2 3 4 5 | 1 2 3 4 5 |
| 2002 Problems | Topics Involved | Rating | Input Files | Output files |
| J1 0123456789 | character graphics | * | ||
| J2 AmeriCanadian | simple strings | * | ||
| J3/S1 Student Council's Breakfast | nested loops | * | ||
| J4/S2 Fraction Action | GCD algorithm | * | ||
| J5/S3 Blindfold | 1D and 2D array | ** | 1 2 3 4 | 1 2 3 4 |
| S4 Bridge Crossing | dynamic programming | ***** | 1 2 3 4 5 | 1 2 3 4 5 |
| S5 Bouncing Ball | geometry calculations | **** | 1 2 3 4 5 | 1 2 3 4 5 |
| 2001 Problems | Topics Involved | Rating | Input Files | Output files |
| J1 Dressing Up | character graphics | * | ||
| J2 Mod Inverse | simple arithmetic (div and mod) | * | ||
| J3/S1 Keeping Score | simple strings, decisions | * | ||
| J4/S2 Spirals | loops, decisions | ** | ||
| J5/S3 Strategic Bombing | graph theory, Warshall's algorithm | **** | 1 2 3 4 5 | 1 2 3 4 5 |
| S4 Cookies | geometry calculations | **** | 1 2 3 4 5 | 1 2 3 4 5 |
| S5 Post's Correspondence | strings, complex recursion | **** | 1 2 3 4 | 1 2 3 4 |
| 2000 Problems | Topics Involved | Rating | Input Files | Output files |
| J1 Calendar | loops, decisions | * | ||
| J2 9966 | simple arithmetic (div and mod), decisions | * | ||
| J3/S1 Slot machines | loops, decisions | * | ||
| J4/S2 Babbling Brooks | 1D array (insertion/deletion shifting) | ** | 1 2 3 4 5 | 1 2 3 4 5 |
| J5/S3 Surfing | strings, graph theory, Warshall's algorithm | **** | 1 2 | 1 2 |
| S4 Golf | dynamic programming | ***** | 1 2 3 4 5 | 1 2 3 4 5 |
| S5 Sheep and Coyotes
Brute force approach or using Perpendicular Bisectors |
geometry calculations, 1D arrays | **** | 1 2 3 4 5 | 1 2 3 4 5 |
| 1999 Problems | Topics Involved | Rating | Input Files | Output files |
| P1 Card Game | 1D array, decisions | * | 1 | 1 |
| P2 Year 2000 | Ugly string processing | *** | 1 | 1 |
| P3 Divided Fractals | character graphics, recursion | *** | 1 | 1 |
| P4 A Knightly Pursuit | 2D array, dynamic programming | ***** | 1 | 1 |
| P5 Letter Arithmetic | exhaustive search (combinations/ permutations), string,
1D array, complex algorithm |
***** | 1 | 1 |
| 1998 Problems | Topics Involved | Rating | Input Files | Output files |
| P1 Censor | strings, loops, decisions | * | 1 | 1 |
| P2 Cross Number | simple arithmetic (div and mod) | * | 1 2 | |
| P3 Mars rover | decisions | ** | 1 | 1 |
| P4 Lottery | string, complex algorithm | *** | 1 | 1 |
| P5 Mountain Passage | 2D arrays, dynamic programming | ***** | 1 | 1 |
| 1997 Problems | Topics Involved | Rating | Input Files | Output files |
| P1 Sentences | nested loops | * | 1 | 1 |
| P2 Nasty Numbers | complex arithmetic (div and mod) | ** | 1 | 1 |
| P3 Double Knockout Competition | simple arithmetic (div and mod) | ** | 1 | 1 |
| P4 Dynamic Dictionary Coding | string, 1D array | ** | 1 | 1 |
| P5 Long Division | string, 1D array, complex algorithm | **** | 1 | 1 |
| 1996 Problems | Topics Involved | Rating | Input Files | Output files |
| P1 Perfect Numbers | simple arithmetic (div and mod) | * | 1 | 1 |
| P2 Divisibility by 11 | string, 1D array, complex algorithm | *** | 1 | 1 |
| P3 Pattern Generator | complex string algorithm | *** | 1 | 1 |
| P4 Roman Numerals | decisions | ** | 1 | 1 |
| P5 Max Distance | 1D array | *** | 1 | 1 |