Изменения

Перейти к: навигация, поиск
Пример
Рассмотрим массовые операции на отрезке на примере задачи "Прибавление на отрезке". При этом мы должны отвечать на запрос минимума на отрезке.
Для эффективной реализаций Следуя вышеописанному алгоритму будем использовать описанную выше структуру {{---}} несогласованные поддеревья. В в каждой вершине, помимо непосредственно суммы, храним хранить минимум на текущем отрезке и несогласованность {{---}} сколько необходимо прибавить ко всем числам этого отрезка(соответственно при запросе минимума истинный минимум на отрезке при корректной несогласованности {{---}} сумма несогласованности и значения в вершине). Тем самым мы сможем обрабатывать запрос прибавления При этом не забудем выполнять "проталкивание" несогласованности и обновление минимума на любом подотрезке эффективно, вместо того чтобы изменять все <tex>O(N)</tex>значенийтекущем отрезке.
Если теперь приходит запрос минимального значения на отрезке, то нам достаточно спуститься по дереву, "протолкнув" все встреченные по пути несогласованности, записанные в вершинах дереваНиже приведен код данного алгоритма.
==Псевдокод==
Анонимный участник

Навигация