找到了挺好的树剖 题单,写一写简单思路,换脑子。
P9808 [POI 2022 ~2023R1] zbo
我是唐比,想了转成前缀距离然后线段树上算前后俩数贡献差的唐氏做法,然后发现不用前缀距离和直接区间加倍数就做完了。
简单题,感觉跟 LCA 那题很像,显然你可以计算答案时每次加点进去,然后每次加点前查一下贡献,距离式子 \(pre_u + pre_v - pre_{lca}\),其中 \(pre_u + pre_v\) 显然很好计算,考虑 \(lca\) 的问题,其实就转成了 LCA 那题,我们考虑每次对一个点到根的所有路径长度倍数 \(+1\),然后每次查点的时候前缀 ask 就好了,当然,如果你转成了前缀距离和就可以得到我的唐比做法。
十五分钟写掉,算上这题和 CF 没交上的好像就 100 紫了。
code