Description
有一首非常流行的歌曲叫《劲歌金曲》,这首歌融合了37首歌,长达11分钟18秒。这首歌为什么如此的流行呢?一般来说,KTV在时间到的时候不会鲁莽的把正在唱的歌切掉,而是等它放完。
设想一下,如果离结束时间你还有15秒,你必须迅速的选一首歌,如果你选择的是一首长达2分钟的歌,那么实际上你多唱了105秒,但是如果你选择了这首《劲歌金曲》,就相当于多唱663秒。
现在假设你在KTV唱歌,还剩t秒时间,你决定接下来只从n首歌曲(不包含《劲歌金曲》)中挑选一些来唱,你想制定一个计划,但是你必须遵守以下规则:
1、一首歌只能唱一次(包含劲歌金曲)
2、对于每首长度为m秒的歌,要么只唱m秒,要么就不唱
3、一首歌结束时,会立马开始一首新歌,忽略中间等待时间
你的目标非常简单:唱尽可能多的歌曲,并尽可能晚的离开KTV
Input
输入的第一行,是一个整数T(T≤100)表示测试数据的组数。
对于每组测试数据:
第一行,两个整数n和t,分别表示候选歌曲的数量n(不包含《劲歌金曲》)以及剩下的时间t(单位是秒)。(1≤n≤50,1≤t≤10^9)
接下来一行,包含n个整数,分别表示候选的n首歌曲的时长,单位是秒,每首歌曲的时长都不超过180秒。
数据保证所有n+1首歌曲的总长度大于t。
Output
对于每组测试数据,输出一行,先输出测试数据的编号,然后输出两个整数,分别是唱的歌曲的总数量,以及总时间
2
3 100
60 70 80
3 100
30 69 70
Case 1: 2 758
Case 2: 3 777
HINT
样例说明:
对于第一组输入数据,最佳选择是唱第三首歌(时长80秒)再加上《劲歌金曲》(时长678秒),总时长是758秒
对于第二组输入数据,最佳选择是唱第一首歌和第二首歌(时长30+69=99)再加上《劲歌金曲》,总时长是777秒。如果我们选择第一首和第三首,时长加起来刚好是100秒,这样就不能唱《劲歌金曲》这首歌了。