top1编程
← 返回题目
题解

书架

1 条题解

  • 0
    @ 2026-7-28 22:45:16
    #include<bits/stdc++.h>
    using namespace std;
    #define N 20005
    bool cmp(int a, int b)
    {
        return a > b;
    }
    int main()
    {
        int n, h[N], b, sum = 0, ct = 0;
        cin >> n >> b;
        for(int i = 1; i <= n; ++i)
            cin >> h[i];
        sort(h+1, h+1+n, cmp);//降序排序
        for(int i = 1; i <= n; ++i)
        {
            sum += h[i];
            if(sum >= b)
            {
                cout << i << endl;
                break;
            }
        }
        return 0;
    }
    
    • 1