https://www.codechef.com/certification/data-structures-and-algorithms/prepare
-
NIM Game:
- Variation of NIM Game: http://www.suhendry.net/blog/?p=1612
- Staircase NIM: https://codeforces.com/blog/entry/44651
-
Green Hackenbush: http://math450games.blogspot.com/2017/02/green-hackenbush.html
-
Grundy Numbers: https://www.youtube.com/playlist?list=PLMCXHnjXnTnuolrTKzZkTMGmQNEP3NaBa
- Chinese Remainder Theorem: https://www.youtube.com/watch?v=ru7mWZJlRQg
- Discrete Logarithm: https://youtu.be/007MVsELvQw
- Linear Time Sieve: http://e-maxx.ru/algo/prime_sieve_linear
- DP: https://www.topcoder.com/community/competitive-programming/tutorials/dynamic-programming-from-novice-to-advanced/
- DP on Tree: https://threads-iiith.quora.com/Dynamic-Programming-on-Trees-Tutorial
- Sum over Subset DP: https://codeforces.com/blog/entry/45223
- DP Optimization Techniques: https://codeforces.com/blog/entry/47932
-
MO's Algorithm
- MO's Algorithm: https://blog.anudeep2011.com/mos-algorithm/
- MO on path: https://codeforces.com/blog/entry/43230
-
Heavy Light Decomposition
-
DSU on Tree: https://codeforces.com/blog/entry/44351
- Hashing
- Hashing: https://www.quora.com/q/threadsiiithyderabad/String-Hashing-for-competitive-programming
- Hashing: https://cp-algorithms.com/string/string-hashing.html
- Rolling Hash: http://codeforces.com/blog/entry/60445
- Mathematics Behind Rolling Hashes and anti-hash tests: http://codeforces.com/blog/entry/60442