Hi!
I was teacher of some online courses for students preparing themselves for IOI. I recorded my course sessions in some video files and they can be useful for Iranian (or who knows Persian) high school and also university students.
If anybody wants the videos contact me here or my Gmail with address taheripost@gmail.com or telegram id @kerpoo .
The first course was about introduction to programming with C++ and the content of the course was:
Introduction to the general programming tools with c++ syntax (Variables, Arrays, Conditions, Loops, Functions & ...)
Recursive functions
Time and memory complexity
Sort algorithms and implementation of Merge-sort
Algorithms about Prime numbers and Eratosthenes sieve
Introduction to big numbers and their algorithms
Introduction to binary search trees (BST)
Working with files by fstream library
Introduction to important libraries and structures for competitive programming (Pair, Vector, Sort function and custom sort, Next_permutation function, String, Set, Map, Struct & ...)
Solving and implementing some projecteuler.net problems.
After this course you will be able to accept about 25 problems of projecteuler.net and a lot of programming exercises.
The second course was about introduction to algorithms and data structures and the content of the course was:
- Dynamic programming:
Simple dp and memorization
Interval dp
Bitmasks and subset dp
Dp on trees
Greedy algorithms
Divide and conquer method
Brute force with bitmasks
Binary search
Graph algorithms:
Bfs and shortest path
Dfs
Floyed warshal
Dijkstra
Prim (MST)
Kruscal (MST)
Eulerian tour (Fleury)
Topological sort
Strongly connected components (SCC)
Directed acyclic graphs (DAG)
2-sat
Cut vertices
Cut edges
- Data structures:
Disjoint sets union (DSU)
Segment tree
Lazy segment tree
Fenwick tree (BIT)
Red black tree
Mo’s algorithm
working with offline queries
Lowest common ancestor (LCA)
Sparse table
- Modular inverses and combinatorics problems
All the above algorithms are introduced and implemented by C++ and also There are a lot of problems from various online judges about each of them as exercises.
There is also a course in graph theory topic (that is completely theorical).