poj1160 Post Office(区间dp)

题意 有p个邮局,n个村庄,邮局只能建在村庄里, 求令所有寄信距离之和最短的值。 题解 数据比较弱,O(n^3)过了。 dp[i][j]表示前i个村庄需要j个邮局, 其必为某个前k个村庄用j-1个邮局,k+1到i用1个邮局的最小值。 即可实现转移,对于某段区间建一个的最小值,邮局一定建在中位数即可。 如果有两个中位数,显然两个地点的值是相等的。 从左中位数a转移到右中位数b,sum-左一半点*di
相关文章
相关标签/搜索