问题描述
给出一段数列,要求将他们分段,每段之和不得超过m,问最少要分几段。
样例输入
5 6
4 2 4 5 1
样例输出
3
算法讨论
因为是要连着分段的,所以没那么难,贪心即可。
const
maxn=100000;
var
a:array[1..maxn] of longint;
i,j,n,m,ans:longint;
s:int64;
begin
read(n,m);
for i:=1 to n do
read(a[i]);
for i:=1 to n do

该博客介绍了如何解决数列分段的问题,要求每段和不超过m,通过贪心算法实现,以达到最少的分段数量。样例输入为5 6,4 2 4 5 1,输出为3。算法讨论部分指出由于分段必须连续,因此贪心策略有效。
最低0.47元/天 解锁文章
2246

被折叠的 条评论
为什么被折叠?



