Standard MO's handles read-only queries. What if you have point updates mixed with queries? Treat time as a third dimension.
Each query now has where is the timestamp (number of updates before this query).
Sort by with block size . You now have three pointers: , , and .
Moving applies or undoes updates. Complexity: with the optimal block size.