买卡片
时间限制:1秒 内存限制:256M
【问题描述】
商店正在出售小H最喜欢的卡片系列,在接下来的 \(n\) 周中,每周会出售其中的一款,同一款卡片不会重复出现。
由于是小H最喜欢的系列,他希望尽可能多地购买这些卡片,但是同一款卡片小H只会购买一个。同时,小H的预算只有 \(m\) 元,因此他无法将每一款都纳入囊中。此外,小H不能连续两周都购买卡片,否则他会陷入愧疚。
现在小H想知道,他最多可以买多少款不同的卡片呢?
【输入格式】
第一行两个正整数 \(n\) 和 \(m\),中间用一个空格隔开;
第二行共 \(n\) 个正整数,第 \(i\) 个正整数表示第 \(i\) 周出售的卡片的价格(单位:元)。
【输出格式】
只有一行,包含一个整数,表示小H最多能买多少款不同的卡片。
【输入输出样例1】
Input
3 8
4 4 5
Output
1
【输入输出样例1说明】
共3周3款卡片,价格分别为4元、4元、8元,同时小H有8元钱。
小H只能买一件卡片,即3款中的任意一款中的一个。虽然8元钱可以买第一和第二款卡片,但他不能连续两周购买,所以这种方案不可行。
【输入输出样例2】
Input
7 10
3 7 5 4 6 5 3
Output
3
【数据说明】
对于 \(30\%\) 的数据,\(1 ≤ n ≤ 10\)
对于 \(60\%\) 的数据,\(1 ≤ m ≤ 100\),\(1 ≤ m ≤ 1000\)
对于 \(100\%\) 的数据,\(1 ≤ n ≤ 1000\),\(1 ≤ m ≤ 1000000\),单个卡片的价格 \(≤1000\)。
【来源】
Mr.he