4453: 「一本通 1.1 练习 2」数列分段
[Creator : ]
Description
对于给定的一个长度为 $N$ 的正整数数列 $A_i$,现要将其分成连续的若干段,并且每段和不超过 $M$(可以等于$M$),问最少能将其分成多少段使得满足要求。
Input
第一行包含两个正整数 $N, M$,表示了数列 $A_i$ 的长度与每段和的最大值,
第二行包含 $N$ 个空格隔开的非负整数 $A_i$,如题目所述。
第二行包含 $N$ 个空格隔开的非负整数 $A_i$,如题目所述。
Output
一个正整数,输出最少划分的段数。
Constraints
对于 $20\%$ 的数据,有 $N ≤ 10$;
对于 $40\%$ 的数据,有 $N ≤ 1000$;
对于 $100\%$ 的数据,有 $N ≤ 100000, M ≤ 10^9$,$M$ 大于所有数的最小值,$A_i$ 之和不超过 $10^9$。
对于 $40\%$ 的数据,有 $N ≤ 1000$;
对于 $100\%$ 的数据,有 $N ≤ 100000, M ≤ 10^9$,$M$ 大于所有数的最小值,$A_i$ 之和不超过 $10^9$。
Sample 1 Input
5 6
4 2 4 5 1
Sample 1 Output
3
将数列如下划分:
$[4]\ [2\ 4]\ [5\ 1]$
第一段和为 $4$,第二段和为 $6$,第三段和为 $6$。均满足和不超过 $M = 6$,并可以证明 $3$ 是最少划分的段数。
$[4]\ [2\ 4]\ [5\ 1]$
第一段和为 $4$,第二段和为 $6$,第三段和为 $6$。均满足和不超过 $M = 6$,并可以证明 $3$ 是最少划分的段数。