注意你的sort排序 你是从下标1开始的 sort(a+1,a+n+1) 排序要注意 同时j
=n 不是 j=n+1
by Lsy1230 @ 2023-07-08 21:43:40
j=n+1是对的
by xjy20111222 @ 2023-08-17 10:17:17
我觉得没错
by xjy20111222 @ 2023-08-17 10:18:05
@[_Harry_Potter_QAQ](/user/976394) 改好了,给个关注
```cpp
#include<bits/stdc++.h>
#define INF 20000
using namespace std;
int n, s = 0;
int a[INF + 5];//数组大5
long long shelf;//注意shelf范围报int
int cmp (int a, int b){
return a > b;
}
int main()
{
ios::sync_with_stdio(0);
cin.tie(0);//快读
cin >> n;
cin >> shelf;
for (int i = 1; i <= n; i++)
cin >> a[i];
sort (a + 1, a + n + 1, cmp);//可以先从大到小排序
for (int i = 1; i <= n; i++){
shelf -= a[i];
++s;
if (shelf <= 0) break;
}
cout << s;
return 0;
}
```
by ZD_LZD @ 2023-09-24 12:10:06
@[ZD_LZD](/user/797451) OK
by _Harry_Potter_QAQ @ 2023-09-27 18:47:08