Графы, жадность (27 ноября 2013)
- Бинарный поиск по ответу
- Выбрать k объектов из n так, чтобы... (дробь → min)
- Цикл минимального среднего веса за O(VElogM)
- Оценка на M : V × U
- MST: алгоритм Борувки
- Собственно алгоритм: фаза = выбрать для каждой вершины ребро min веса и сжать компоненты связности
- Чтобы не было циклов нужно, чтобы все веса были различными. Рассмотрим пары (wi, i)
- Оценка времени работы: O(ElogV)
- Избавляемся от кратных ребер цифровой сортировкой.
- Оценка времени работы с учетом удаления кратных ребер: O(V2), O(ElogE(V2))
- СНМ: Сжатие путей
- Амортизированная оценка на время работы m запросов = O((m+n)logn)
- Отрезки на прямой
- Выбрать максимальное количество неперескающихся отрезков на прямой
- Выбрать максимальное количество отрезков на прямой так, чтобы каждая точка была покрыта не более k раз
- Жадные алгоритмы
- Белоснежка и гномы, ai + bi
- Задача про 2 станка
- Автоматическое создание компаратора
- Школьники вылезают из ямы (РОИ 2006).
- Жадная часть
- Решение динамикой за O(n2)