【BZOJ4919】[Lydsy六月月赛]大根堆

题解:

首先裸的dp很好想

f[i][j]表示在i点,最大值<=j的点数最大值

看了别人的题解知道了可以用线段树合并来优化这个东西。。

我们考虑对于每个点,首先我们要合并它的子树

其实就是对于相同位置的点相加即可

然后考虑当前节点,我们应用f[v[x]-1]+1去更新v[x]-n之间的值(也就是取max操作)

然后取max这个东西是可以标记永久化的

猜你喜欢

转载自www.cnblogs.com/yinwuxiao/p/9060320.html