你貌似没有在新一次循环将sum设为0.
by miaowang555 @ 2023-06-30 10:41:52
@[miaowang555](/user/921718) 貌似
by miaowang555 @ 2023-06-30 10:42:11
@[miaowang555](/user/921718) sum是有几个苹果啊,归零了苹果也归零了啊
by hexuchen @ 2023-06-30 10:48:17
@[hexuchen](/user/945742)
```cpp
#include <bits/stdc++.h>
using namespace std;
struct apple{
int gao,li;
};
bool cmp(apple a,apple b){
return a.li<b.li;
}
int main(){
int n,s2,sum=0,a,b;
cin>>n>>s2>>a>>b;
apple s[5001];
for(int i=0;i<n;i++){
cin>>s[i].gao>>s[i].li;
}
sort(s,s+n,cmp);
for(int i=0;i<n;i++){
if(s[i].gao<=(a+b)){
s2-=s[i].li;
if(s2<0){
break;
}
sum++;
}
}
cout << sum << endl;
return 0;
}
```
by too_simple @ 2023-06-30 11:15:28
改成小于0,然后n可能等于0
by too_simple @ 2023-06-30 11:16:04
@[too_simple](/user/366937) 知道了,谢谢大神指导!
by hexuchen @ 2023-06-30 11:17:35