P2676 [USACO07DEC]Bookshelf B - 洛谷 | 计算机科学教育新生态 (luogu.com.cn)
#include<bits/stdc++.h>
using namespace std;
int n,b,h[20010];
bool cmp(int a,int b)//定排序规则
{
return a > b;
}
int main()
{
cin >> n >> b;
for(int i=1;i<=n;i++)cin >> h[i];
sort(h+1,h+1+n,cmp); //左闭右开区间
int minn = 0,i=1;
while (minn < b)
{
minn += h[i];
i++;
}
cout << i - 1 << endl; //满足条件的minn多加了一次 要减掉
return 0;
}