Sumas de prefijo + actualizaciones puntuales, ambas O(log n). El trabajo de un segment tree para sumas — en un array y dos ciclos.
i & -i posiciones que terminan en i (bit menos significativo encendido)i -= i & -ii += i & -iprefix_sum(6): 6 → 4 → 0 (resta el lowbit). update(3): 3 → 4 → 8 (suma el lowbit). No se dibuja ningún árbol — no hay árbol.
46× más rápido que el array crudo, 403× que las sumas de prefijo — y 4× más rápido que un segment tree (6ms vs 25ms).
Mismo Big-O, constante diminuta → empata la herramienta con el problema exacto. Siguiente: B-trees — el árbol balanceado, reimaginado para disco.