Course Overview

Target

CCC Junior J1-J3 mastery with J4/J5 stretch goal

CCC Contest

February 19, 2026

Total Classes

35 classes (15 Fall + 20 Spring)

Prerequisites

No prior programming experience required

TTMath CS1 Python course is designed for students with no prior coding knowledge who are interested in learning programming and competitive problem solving. This course introduces Python fundamentals while building a strong foundation for algorithmic thinking and CCC competition preparation.

Fall 2025 Schedule (September-December)

Focus: Python fundamentals and basic problem solving | 15 sessions

Class Date Topic Key Skills
01Sep 13, 2025Introduction to ProgrammingVariables, Input/Output, Basic Math Operations
02Sep 20, 2025Data TypesIntegers, Floats, Strings, Boolean Logic
03Sep 27, 2025Conditional Statementsif/elif/else, Comparison Operators
04Oct 4, 2025Loops Part 1for loops, range() function, Basic Iteration Patterns
05Oct 11, 2025Loops Part 2while loops, Nested Loops, Loop Control (break/continue)
06Oct 18, 2025String ProcessingString Methods, Character Operations, Basic String Algorithms
07Oct 25, 2025FunctionsFunction Definition, Parameters, Return Values, Scope, Recursion
08Nov 1, 2025Introduction to AlgorithmsTime Complexity, Space Complexity, Algorithm Analysis
09Nov 8, 2025Lists Part 1List Creation, Indexing, Basic Operations
10Nov 15, 2025Lists Part 2List Methods, Slicing, List Comprehensions
11Nov 22, 2025Problem Solving StrategiesBreaking Down Problems, Pseudocode, Debugging
12Nov 29, 2025Basic AlgorithmsSimple Searching, Counting, Finding Maximum/Minimum
13Dec 6, 2025Dictionaries and SetsDictionary Operations, Counting with Dictionaries
14Dec 13, 2025Advanced AlgorithmsSorting Algorithms, Binary Search, Algorithm Optimization
15Dec 20, 2025Final Test (DMOJ Contest)Final Assessment + comprehensive review

Spring 2026 Schedule (January-June)

Focus: CCC preparation + advanced competitive programming | 20 sessions

Class Date Topic Key Skills
01Jan 10, 2026Advanced Data StructuresTuples, Collections Module, defaultdict
02Jan 17, 2026String AlgorithmsPattern Matching, String Manipulation Techniques
03Jan 24, 2026Graph Theory BasicsGraph Representation, Simple Traversal, Connected Components
04Jan 31, 2026RecursionRecursive Thinking, Base Cases, Recursive Problem Solving
05Feb 7, 2026Sorting and SearchingBuilt-in Sort, Binary Search, Custom Comparisons
06Feb 14, 2026CCC Preparation WeekFast Input/Output, Contest Strategies, Time Management
--Feb 19, 2026CCC CONTEST DAY
07Feb 21, 2026CCC Review and AnalysisProblem Breakdown, Alternative Solutions
08Feb 28, 2026Mathematical AlgorithmsGCD, LCM, Prime Numbers, Divisibility
09Mar 7, 2026Advanced Graph AlgorithmsBFS, DFS, Path Finding Applications
--Mar 14 & 21March Break
10Mar 28, 2026Dynamic Programming IntroductionMemoization, Bottom-up Approach
11Apr 4, 2026Greedy AlgorithmsGreedy Strategy, Optimization Problems
12Apr 11, 2026Advanced Problem SolvingTwo Pointers, Sliding Window Technique
13Apr 18, 2026CombinatoricsPermutations, Combinations, Counting Principles
14Apr 25, 2026Python with AIAPI Integration, ChatGPT API Usage, Building AI-Powered Applications
15May 2, 2026Simulation and ImplementationComplex Problem Implementation
16May 9, 2026Contest MathematicsNumber Theory, Modular Arithmetic
--May 16, 2026Victoria Day Break
17May 23, 2026Advanced Data ProcessingParsing, Complex Input Formats
18May 30, 2026Advanced String AlgorithmsKMP, Suffix Arrays, Pattern Matching Optimization
19Jun 6, 2026Advanced Tree AlgorithmsBinary Trees, Tree Traversal, Lowest Common Ancestor
20Jun 13, 2026Final Test (DMOJ Contest)Final Assessment + course completion

CCC Competition Foundations

Instructor

Jim Cai

Email: cntourit@gmail.com

Ready to Start?

Book a free assessment to join CS1 Python course.

Book Free Assessment