60分求助!!!

P2676 [USACO07DEC] Bookshelf B

```cpp #include <iostream> #include<cstdio> #include <algorithm> #include <vector> using namespace std; inline int read() { int x = 0, f = 1; char ch = getchar(); while (ch < '0' || ch>'9') { if (ch == '-') f = -1; ch = getchar(); } while (ch >= '0' && ch <= '9') x = x * 10 + ch - '0', ch = getchar(); return x * f; } vector<int> h; int n, i; int b;/* bool compa(int a, int b) { return a > b; }*/ int main() { scanf("%d%d", &n, &b); for (i = 1; i <= n; ++i) h.push_back(read()); sort(h.begin(), h.end()/*, compa*/); for (i = n; b >= 0; b -= h[i--]); printf("%d", n - i - 1); return 0; } ``` 这样就A了
by M_K_W_ @ 2023-05-25 20:18:42


compa的问题
by M_K_W_ @ 2023-05-25 20:19:09


@[MZjtW](/user/688417) 原来是这样
by f126_11 @ 2023-05-27 08:29:21


|