RMQ & LCA
Соц.опрос: языки программирования С/C++, Java, Python, Pascal
- [05] [Сережа.K] С/C++: структура с битовым сжатием
- [10] [Ваня] RMQ деревом отрезков за [n, logn] (минимум на отрезке, изменение в точке, реализация сверху)
- [10] [Ваня] RMQ через sparse table за [nlogn, 1]
- [05] [Ваня] Проверка, является одна вершина предком другой за O(1)
- [17] [Ваня] Двоичные подъемы: LCA за [nlogn, logn] (двумя способами)
- [---] [Ваня] Упражнение: посчитать двоичными подъемами глубину вершины за logn
- [15] [Ваня] LCA → RMQ±1 (Эйлеров обход дерева)
- [03] [Ваня] LCA мы теперь тоже умеем за [nlogn, 1] (LCA → RMQ, sparse table)
Перерыв
- [20] [Сережа.K] RMQ → LCA (строим декартово дерево)
- [05] [Сережа.K] LCA в Offline за O((n+m)*) (алгоритм Ахо-Ульмана-Тарьяна)
- [05] [Сережа.K] минимум на пути в дереве в Online: двоичные подъемы [nlogn, logn]
- [05] [Сережа.K] Sparse table за [n, logn]
- [05] [Сережа.K] Sparse table за [n, log*n] (рекурсивное замыкание предыдущей идеи)
- [10] [Сережа.K] Фарах-Колтон-Бендер: RMQ → LCA → RMQ±1 и алгоритм 4-х русских для решения последней