P2146 [NOI2015]软件包管理器
树剖板子题
subtask1:install x:将x->1路径上的点区间覆盖为1,输出
t[1].sum-last
subtask2 :uninstall x:将x的子树区间覆盖成0,输出
last-t[1].sum
在代码实现的时候需注意:tag.add必须赋为-1,0是会WA的
小技巧 每次记录last,用区间和的思想,每次操作之前记录一下t[1].sum的值,更新之后再查询一遍t[1].sum的值,两者之差的绝对值则为答案。
- 注意存点时下标+1,query的时候也要把query的点+1!!!!