bzoj 4297: [PA2015]Rozstaw szyn 树形dp

该博客讨论了如何解决一个树形动态规划问题,即在给定一棵具有n个点和m个叶子节点的树中,为非叶子节点分配权值,以使相邻节点权值差的绝对值之和最小。博主分析了将问题转化为菊花图并取中位数的策略,以及如何通过儿子节点的最优区间推导父亲节点的最优解,实现了O(nlogn)的时间复杂度解决方案。
摘要由CSDN通过智能技术生成

题意

给定一棵有n个点,m个叶子节点的树,其中m个叶子节点分别为1到m号点,每个叶子节点有一个权值r[i]。你需要给剩下n-m个点各指定一个权值,使得树上相邻两个点的权值差的绝对值之和最小。
n500000 n ≤ 500000

分析

先考虑菊花图要怎么做。如果我们把权值看成数轴上的坐标,显然取中位数是最优的。
这样的话每个点的最优权值就是一个区间,只要把变成有根树,然后父亲的最优区间就可以通过儿子的来得到。
时间复杂度 O

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值