数列分段pascal程序
题意
对于给定的一个长度为N的正整数数列A[i],现要将其分成连续的若干段,并且每段和不超过M(可以等于M),问最少能将其分成多少段使得满足要求。
分析
一个一个加上s,如果s>m,那么s就变成当前的数字,并且tj+1
var
n,m,tj,i,s,w:longint;
begin
readln(n,m);
tj:=1;
s:=0;
for i:=1 to n do
begin
read(w);
if (s+w)<=m then s:=s+w else
begin
s:=w;
inc(tj);
end;
end;
write(tj);
end.