根据题意,初始建树需要 2∗n2*n2∗n 个结点,每次修改需要 log2(n)log_2(n)log2(n) 个结点
那么只要存储 2∗n+log2(n)2*n+log_2(n)2∗n+log2(n)个结点即可
但是如果你数组开到 2∗(1e6+7)+log2(1e6+7)2*(1e6+7)+log_2(1e6+7)2∗(1e6+7)+log2(1e6+7)
那么就会MLE第二个点
如果遇到此类数据结构数组应该开多大?