该比赛已结束,您无法在比赛模式下递交该题目。您可以点击“在题库中打开”以普通模式查看和递交本题。
书架(book)
题目描述
Y 同学有 n 本书,需要按照给定顺序放到若干层书架上。第 i 本书的厚度为 ai,每一层书架能承受的总厚度不超过 m。
放书时必须保持原来的顺序。也就是说,每一层书架上的书都必须对应原序列中的一个连续区间,且前一层的所有书都在后一层的书之前。
已知每本书都可以单独放在一层上。请你求出最少需要多少层书架,才能放下所有书。
输入格式
第一行包含两个整数 n,m。
第二行包含 n 个整数 a1,a2,…,an。
输出格式
输出一行一个整数,表示最少需要的书架层数。
样例
样例输入 #1
6 10
2 8 3 3 9 1
样例输出 #1
3
数据范围与约定
对于 100% 的数据,保证 1≤n≤2×105,1≤ai≤m≤109。
| 测试点编号 |
分值 |
n≤ |
m≤ |
特殊性质 |
| 1∼2 |
10 |
20 |
100 |
无 |
| 3∼5 |
15 |
2000 |
1000 |
特殊性质 A |
| 6∼8 |
106 |
特殊性质 B |
| 9∼12 |
20 |
2×105 |
无 |
| 13∼16 |
109 |
特殊性质 A |
| 17∼20 |
无 |
- 特殊性质 A:保证所有 ai 相等。
- 特殊性质 B:保证 ∑i=1nai≤m。