#5774. 西点大赛
西点大赛
题目描述
著名的西点大赛开始了。
有 N 名厨师参加今年的比赛。厨师们根据抽签顺序依次获得了一个号码牌,N 名厨师的号码牌分别为 1∼N。厨师们已经完成了糕点的制作,接下来,他们将严格按照这个顺序将自己制作的糕点放入烤箱烘烤,每名厨师制作糕点的烘烤时间不同,第 i 名厨师需要 个单位的时间烘烤参赛的糕点。
大赛主办方准备了 C 个烤箱,每个烤箱一次只能烘烤一名厨师的糕点。前 C 名厨师最先烘烤他们的糕点。当其中一名厨师完成烘烤取出自己的糕点后,下一名厨师会立刻将自己的糕点放入该烤箱烘烤。这个换人的过程非常迅速,可以认为前一名厨师取出糕点、下一名厨师将糕点放入烤箱的这个过程不消耗时间。
请编程计算出,主办方最少要准备多少个烤箱,才能在 T 个单位的时间内(含 T 个单位的时间)完成所有糕点的烘烤。
输入
第一行输入两个整数 N 和 T 。
接下来的 N 行,第 i 行给出了号码牌为 i 的厨师,其制作糕点的烘烤时间 。
输出
输出最少需要准备烤箱的数量。
样例
输入复制
5 12
6
3
6
3
7
输出复制
4
输入复制
10 122
36
87
93
50
22
63
28
91
100
64
输出复制
8
说明
样例 1 解释
有 5 名厨师,他们需要的烘烤时间分别是 6 3 6 3 7。
如果有 4 个烤箱,前 4 名厨师不需要等待,将自己的糕点,放入这 4 个烤箱烘烤。
第 5 名厨师,可以等到第 2 名或者第 4 名厨师的糕点烘烤结束,用他们两位厨师其中一人的烤箱,烘烤自己的糕点。
所有厨师的糕点烘烤结束,需要 3+7=10 分钟,符合 T=12 的时间要求。
如果只有 3 个烤箱,前 3 名厨师先烘烤自己的糕点,第 4 名厨师用第 2 名厨师的烤箱,第 5 名厨师无论用谁的烤箱,都无法满足在 12 个单位的时间内,完成所有糕点的烘烤。
数据范围
对于 30% 的数据,满足 1≤N≤100。
对于 50% 的数据,满足 1≤N≤1000。
对于 100% 的数据,满足 1≤N≤,1≤T≤,1≤≤,≤T。