问题描述
六一儿童节到了,X星人宝宝收到了很多很多礼物。他决定把这些礼物装到自己的礼物箱中。为此,他准备了很多个型号相同的礼物箱,每个礼物箱能够装礼物的最大重量都是一样的。但是X星人宝宝不希望在一个礼物箱里面装太多礼物(可能担心礼物会被压坏吧),每个礼物箱最多只允许装2个礼物。
假设X星人宝宝收到了N个礼物,现在给出每一个礼物的重量和一个礼物箱的最大装载量,请你编写一个程序计算X星人宝宝最少要用多少个礼物箱才能够把所有的礼物都装完。
输入
单组输入。
每组两行,第1行输入两个正整数,分别表示礼物的数量N和每个礼物箱的最大装载量C,其中1<=N<=1000,1<=C<=100,两者之间用英文空格隔开。 第2行输入N个不超过100的正整数,分别表示每一个礼物的重量,两两之间用英文空格隔开。 输入保证最重的礼物的重量<=C。
输出
针对所输出的数据,每行输出个礼物盒子装载的礼物及其重量,再换行输出将所有的礼物全部都装完所需的礼物箱的最少个数。
样例输入
5 80
20 70 40 30 10
样例输出
70 10
40 30
20
3