Competitive
The competitive branch of CPT is for students interested in programming competitively. This branch of CPT explores advanced concepts and algorithms, such as Dynamic Programming, Data Structures, and Graph Theory. Competitive is perfect for students that are interested in programming competitions or learning advanced programming algorithms.
Lessons (2024-2025)
- Lesson 0: (2024-10-01): Intro Slides
- Junior:
- Lesson 1 (2024-10-17): Java Basics
- Lesson 2 (2024-10-24): Input with Buffered Reader
- Lesson 3 (2024-11-07): Methods & Functions
- Senior:
- Lesson 1 (2024-10-09): Arrays & Prefix Sum Arrays
- Lesson 2 (2024-10-16): ArrayLists & Stacks
- Lesson 3 (2024-10-23): Queues & Priority Queues
- Lesson 4 (2024-11-06): Maps & Sets
Archive
Lessons (2023-2024)
- Lesson 0: (2023-10-05) - Intro to Competitive Programming
- Lesson 1: (2023-10-12) - Built In Data Structures and Binary Search
- Lesson 2: (2023-10-26) - Prefix Sum Array and Difference Array
- Lesson 3: (2023-11-09) - Intro to Graph Theory
- Lesson 4: (2023-11-23) - Dijkstra's Algorithm
- Lesson 5: (2023-12-07) - DSU and MST
- Lesson 6: (2024-01-11) - BIT and Segment Tree
- Lesson 7: (2024-02-08) - Intro to Dynamic Programming
Lessons (2022-2023)
- Lesson 1: (2022-10-11) - Intro to Competitive Programming
- Lesson 2: (2022-10-25) - Built-In Data Structures
- Lesson 3: (2022-11-01) - Binary Search
- Lesson 4: (2022-11-08) - PSA, DA, Prefix & Suffix Queries
- Lesson 5: (2022-11-15) - Graph Theory, DFS, BFS
- Lesson 6: (2022-11-22) - Shortest Path and Dijkstra
- Lesson 7: (2022-11-29) - Trees
- Lesson 8: (2022-12-06) - DSU & MST
- Lesson 9: (2022-12-13) - Two Pointers & Sliding Window
- Lesson 10: (2022-12-20) - General Problem Solving Techniques
Lessons (2021-2022)
- Lesson 1: (2021-11-22) - Standard IO and String Manipulation
- Lesson 2: (2021-11-25) - Arrays and their Applications
- Lesson 3: (2021-11-30) - Multidimensional Arrays
- Lesson 4: (2021-12-07) - Prefix Sum Arrays
- Lesson 5: (2021-12-14) - Sorting and Searching
- Lesson 6: (2022-01-25) - Built-in Data Structures
- Lesson 7: (2022-02-16) - Recursion
- Lesson 8: (2022-02-10) - CCC Prep
- Lesson 9: (2022-02-24) - Intro to Graph Theory & DFS
- Lesson 10: (2022-03-03) - CCC Takeup
- Lesson 11: (2022-03-24) - Intro to Dynamic Programming
- Lesson 12: (2022-04-07) - Tree DP
- Lesson 13: (2022-04-14) - Binary Search Tree
- Lesson 14: (2022-04-21) - Square Root Decomposition
Lessons (2020-2021)
- Lesson 1: (2020-12-11) - LCC Contest 1 Takeup
- Lesson 2: (2021-01-16) - LCC Contest 2 Takeup
- Lesson 3: (2021-02-16) - CCC Preparation
- Lesson 4: (2021-02-26) - LCC Contest 3 and CCC Takeup
- Lesson 5: (2021-03-12) - LCC Contest 4 Takeup
- Lesson 6: (2021-03-26) - Lowest Common Ancestor
- Lesson 7: (2021-04-30) - LCC Contest 5 and Competitive Contest Takeup
- Lesson 8: (2021-05-14) - Trie
Lessons (2019-2020)
Season 1
- Lesson 1: (2019-09-27) - Information Session
- Lesson 2: (2019-10-04) - Graph Theory
- Lesson 3: (2019-10-18) - Competitive Contest #1
- Lesson 4: (2019-11-01) - Introduction to Dynamic Programming
- Lesson 5: (2019-11-08) - Competitive Contest #2
- Lesson 6: (2019-11-22) - Contest Takeup and Segtrees
- Lesson 7: (2019-11-29) - Competitive Contest #3
- Lesson 8: (2019-12-13) - Contest Takeup & Math Concepts
- Lesson 9: (2019-12-20) - Competitive Contest #4
Season 2
- Lesson 1: (2020-01-10) - Advanced Time Complexity Analysis
- Lesson 2: (2020-01-17) - Competitive Contest #5
- Lesson 3: (2020-02-10) - CCC Preparation
- Lesson 4: (2020-02-18) - ???
- Lesson 5: (2020-02-28) - Competitive Contest #6
- Lesson 6: (2020-03-06) - Contest Takeup and Primes
- Lesson 7: (2020-04-10) - Competitive Contest #7
- Lesson 8: (2020-04-17) - Contest Takeup
- Lesson 9: (2020-04-24) - Competitive Contest #8
- Lesson 10: (2020-05-01) - Contest Takeup
- Lesson 11: (2020-05-08) - Competitive Contest #9
- Lesson 12: (2020-05-15) - Contest Takeup
- Lesson 13: (2020-05-22) - Divide and Conquer
- Lesson 14: (2020-05-29) - Competitive Contest #10
- Lesson 15: (2020-06-05) - Contest Takeup
Lessons (2018-2019)
- Season 1 (Basic Algorithms)
- Lesson 1: (2018-10-12) - Introduction to Competitive Programming and Contest #1
- Lesson 2: (2018-10-19) - Dynamic Programming
- Lesson 3: (2018-11-02) - Contest #2
- Lesson 4: (2018-11-09) - Array-based Data Structures
- Lesson 5: (2018-12-14) - Basic Graph Theory
- Season 2 (Advanced Algorithms)
- Lesson 6: (2019-02-08) - CCC Prep
- Lesson 7: (2019-03-08) - Math in CS
- Lesson 8: (2019-03-22) - Advanced Uses of Dynamic Programming
- Lesson 9: (XXXX-XX-XX) - Properties of Trees
- Lesson 10: (XXXX-XX-XX) - Hashing
- Lesson 11: (XXXX-XX-XX) - Advanced Data Structures
- Lesson 12: (XXXX-XX-XX) - FFT