书的复制
题目
现在要把m本有顺序的书分给k个人复制(抄写),每个人的抄写速度都一样,一本书不允许分给两个或两个以上的人抄写,分给每个人的书,必须是连续的,比如不能把第一、第三、第四本书给同一个人抄写。
现在请你设计一种方案,使得复制时间最短。复制时间为抄写最多的人用去的时间。
输入
第一行两个整数,m,k(k<=m<=500)
第二行为m个整数,第i个数表示第i本书的页数。
输出
最短时间 抄写时间最多的人中最短的人
样例
input
9 3
1 2 3 4 5 6 7 8 9
output
17
问题分析
首先要求一个前缀和 f [ i ] 1]=当前的前缀和
然后枚举人数 从 2 开始,因为 1 个人那不就是时间总和吗,对不对
再枚举本数 从 i 开始,你好歹一人一本吧,没那么抠吧
最后寻找断点,找出抄写时间最长的那个人和 f [ j ] [ i ] 比小,小的存进 f 数组
从 i – 1 开始,到 < j,f [ j ] [ i ] = 一个很大很大的数
动态转移方程:f [ j ] [ i ] = min ( max ( f [ k ] [ i-1 ] ,