Структуры данных (16 октября 2014)
- Разбор: 4С.function, тараканы
- Bucket sort. Сортировка за линейное время.
- СНМ на основе списков: get за O(1), join-ы в сумме O(nlogn)
- Дерево отрезков снизу сверху
- Сверху: += на отрезке, = на отрезке, проталкивание вниз
- Решение задач
- feelgood: даны ai > 0, найти отрезок такой, что min × ∑ → max
- Напоминание: решение за O(n)
- Решение с помощью СНМ
- Решение деревом отрезков
- painter: число черных отрезков, суммарная длина черного, операция "покрасить отрезок"
- Другие операции на отрезке: произведение чисел на отрезке, произведение матриц, сумма линейных функций, gcd на отрезке
- Заметающая, она же сканирующая, прямая
- Выбрать самую тяжелую (сумма весов) последовательность точек на плоскости, упорядоченных и по x, и по y. Сжатие координат.
- Для каждого из m прямоугольников найти количество точек в нем. O((n+m)logn)