## Registration for classes with live lectures that correspond to this course is now open! More information here.

Here is the YouTube channel with all of the videos.
The problemsets for all the topics can be found here.

## Dynamic Programming (DP) [Problemset]

Problem 1: Codeforces 698A

Prerequisits:

• Arrays and loops

This Tutorial Includes:

• An introduction dynamic programming
• The solution to 698A
• A simple, commented code with the same variable names as the explanation in the video

Problem 2: Codeforces 855B

Prerequisits:

• Arrays and loops

This Tutorial Includes:

• An introduction dynamic programming
• The solution to 8555B
• A simple code with the same variable names as the explanation in the video

Problem 3: Codeforces 961B (Prefix sums)

Problem 5: Codeforces 939C (Prefix sums)

Problem 7: Codeforces 22B (This problem can be solved in O ( (NM)3) with brute force but there is a dp O ( (NM)2) solution.)

Problem 10: Codeforces 245H (The solution without hashing.)

Prerequisits:

• Understand the (very basic) idea behind dp

This Tutorial Includes:

• Finding all the palindromes in a string
• 2D Prefix sums
• Simple code (no defines, etc) that matches the tutorial and an explination of every line (helps with the implementation)

Problem 11: USACO Taming the Herd (Found by Michael Cao)

#### DP on Trees

[Problems were found by Michael Cao]

## Depth First Search (DFS) [Problemset]

Prerequisits:

• Basic recursion

This Tutorial Includes:

• The idea behind DFS
• Finding connected components in a graph
• The solution to 893C
• A simple code with a line-by-line explanation of the code while I write it (helpful for those stuck on the implementation of DFS)

Problem 8: Codeforces 839C

Prerequisits:

• for each loops
• arrays and vectors

This Tutorial Includes:

• An introduction trees
• The solution to 839C
• Simple code (no defines, etc) that matches the tutorial and a line-by-line explanation of the code while I write it (helpful for those stuck on the implementation of DFS)

Problem 9: Codeforces 930A

Problem 10: Codeforces 842C

Problem 11: Codeforces 690C2

Problem 12: USACO Directory Traversal (Found by Michael Cao)

## Breadth First Search (BFS)

[Problems were found by Michael Cao]

Problem 1: USACO A Pie for a Pie

## Dijkstra

[Problems were found by Michael Cao]

Basics - (Dijkstra) CodeForces 20C

Problem 1: CodeForces 1076D

Problem 2: USACO Why Did the Cow Cross the Road

Problem 3: USACO Bessie's Dream

Problem 4: USACO Fine Dining

## Loops [Problemset]

Problem 1: Codeforces 519C

Problem 3: Codeforces 907B

## Binary Search / Two Pointers [Problemset]

Problem 1: Codeforces 924B (Binary Search or Two Pointers)

## Math [Problemset]

#### Probability

More video solutions are coming soon...