This content is archived!

For the 2018-2019 school year, we have switched to using the WLMOJ judge for all MCPT related content. This is an archive of our old website and will not be updated.

Online lessons

Problems

Editorials

Meeting Workshops

Junior lessons

Lesson 1: 2017-10-03
Intro
Lesson 2: 2017-10-10
Lesson 3: 2017-10-17
Loops
Lesson 4: 2017-10-24
Variables and User Input
Lesson 5: 2017-10-31
Logic and Conditionals
Lesson 6: 2017-11-07
String Manipulation
Lesson 7: 2017-11-14
Term Review
Lesson 8: 2017-11-21
GUI Windows
Lesson 9: 2017-11-28
Procedures and Functions
Lesson 10: 2017-12-05
Arrays
Lesson 11: 2017-12-12
GUI Buttons
Lesson 12: 2017-12-19
ISP Tips
Lesson 13: 2018-1-14
Exam Tips
Lesson 14: 2018-2-06
Mega Refresher 1
Lesson 15: 2018-2-13
Mega Refresher 2
Lesson 16: 2018-3-02
GD 1 Intro to Real-Time Games
Lesson 17: 2018-3-09
Lesson 17.5: 2016-4-6
GD 2.5 Level Up
Lesson 18: 2018-4-6
GD 3 Collisions
Lesson 19: 2018-4-12
Lesson 20: 2018-04-19
GD 5 Scrolling
Lesson 21: 2018-04-27
GD 6 Objects
Lesson 22: 2018-05-04
GD 7 Tiles
Lesson 23: 2018-05-18
GD 8 AI

Intermediate lessons

Lesson 1: 2017-10-03
Introduction
Lesson 2: 2017-10-10
Conditionals
Lesson 3: 2017-10-17
Standard IO
Lesson 4: 2017-10-31
String Manipulation
Lesson 5: 2017-11-07
Loops
Lesson 6: 2017-11-14
Intro to Arrays
Lesson 7: 2017-11-21
Multidimensional Arrays
Lesson 8: 2017-11-28
More Arrays Problems
Lesson 9: 2017-12-05
File IO
Lesson 10: 2017-12-12
Math, Casting, and Parsing
Lesson 11: 2017-12-19
Winter Practice Problems
Lesson 12: 2018-01-09
Intro to OOP
Lesson 13: 2018-01-16
ICS3U Exam Review
Lesson 14: 2018-02-06
OOP Part 2
Lesson 15: 2018-02-20
OOP Part 3
Lesson 16: 2018-02-27
Recursion
Lesson 17: 2018-03-06
More Practice
Lesson 18: 2018-03-20
ArrayLists and More
Lesson 19: 2018-03-27
Searching Algorithms
Lesson 20: 2018-04-03
Sorting Algorithms: Selection and Insertion
Lesson 21: 2018-04-24
Sorting Algorithms: Merge and Quick

Girls lessons

Lesson 1: 2017-10-05
Introduction and Logic Games
Lesson 2: 2017-10-12
IO in Turing and Java
Lesson 3J: 2017-10-18
Java: Variables, Maths, Parsing and String Manipulation
Lesson 3T: 2017-10-18
Turing: Variables and Maths operations
Lesson 4: 2017-10-25
Solutions to IO/Maths/String Problems
Lesson 5J: 2017-11-02
Java: Loops and String Manipulation
Lesson 5T: 2017-11-02
Turing: Loops and String Manipulation
Lesson 6: 2017-11-09
Arrays in Turing and Java
Lesson 7: 2017-11-16
2D/3D Arrays in Turing and Java
Lesson 8: 2017-11-23
Searching Arrays (Binary Search)
Lesson 9: 2017-11-30
Sorting Arrays (Selection Sort and Insertion Sort)
Lesson 10: 2017-12-07
Sorting Arrays (Bubble Sort)
Lesson 11: 2017-12-14
Flexible Arrays
Lesson 12: 2017-12-21
Christmas Problem Set
Lesson 13: 2018-01-11
Turing ISP help
Lesson 14: 2018-01-18
Exam Review
Lesson 15: 2018-02-08
CCC Prep

Lesson 0: 0000-00-00
Lesson 1: 2017-10-13
Time Complexity
Lesson 2: 2017-10-20
Data Structures
Lesson 3: 2017-11-10
Prefix Sum Array
Lesson 4: 2017-11-24
Prefix Difference Array
Lesson 5: 2017-12-15
Dynamic Programming
Lesson 6: 2018-01-12
Graph Theory (BFS/DFS)
Lesson 7: 2018-01-19
Problem Takeup + Code
Lesson 7.5: 2018-02-08
CCC Practice Problem List
Lesson 8: 2018-02-09
Dijkstra's Algorithm
Lesson 9: 2018-02-22
CCC 2018 Senior Solutions
Lesson 10: 2018-02-22
Kruskal's Algorithm
Lesson 11: 2018-03-01
JDCC 3 Senior Takeup
Lesson 12: 2018-03-08
Fenwick Tree
Lesson 13: 2018-04-19
Modular Arithmetic
Lesson 14: 2018-05-03
Binary Search

Old lessons

Lesson 1: 2015-10-09
The Basics
Lesson 2: 2015-10-15
Basic Problems
Lesson 3: 2015-11-05
Problem Solutions
Lesson 3b: 2015-11-05
Weekly Problems
Lesson 4: 2015-11-05
Problem Solutions
Lesson 5: 2015-12-04
GREEDY!
Lesson 6: 2015-12-10
Applying Greedy
Lesson 7: 2016-01-08
Divide & Conquer