Изменения

Перейти к: навигация, поиск
Нет описания правки
=== update ===
Процедура обновления на отрезке. Данная процедура выполняет разбиение текущего отрезка на подотрезки и обновление в них несогласованности. Очень важно выполнить push как только идет рекурсивный вызов от детей, чтобы избежать некорректной обработки в детях. И так как значение в детях могло измениться, то необходимо выполнить обновление ответа по операций операции <tex>\oplus</tex> на текущем отрезке.
void update(int node, int a, int b, T val) {
=== query ===
Получение ответа по операций операции <tex>\oplus</tex>. Отличие от операций операции обновления лишь в том, что для каждого отрезка разбиения необходимо не обновить несогласованность, а сложить по операций операции <tex>\oplus</tex> с текущим ответом истинное значение на отрезке (то есть результат сложения по операций операции <tex>\odot</tex> значения в вершине с несогласованностью).
T query(int node, int a, int b) {
333
правки

Навигация