0
已解决
田悦妍
新手守护
新手守护
题目链接: 酷町堂:2794
某小学有若干名小朋友,儿童节到了要给他们带去礼物。调查显示,小朋友们分为N类,对于第i类小朋友,有Ci个小朋友想要第i种礼品,这种礼物的售价为Pi。现在有B元的预算,他最多可以满足多少小朋友?(B的值可能很大)
错误代码:
- #include<bits/stdc++.h>
- using namespace std;
- struct pig{
- int sl,jg;
- }a[100001];
- bool cmp(pig x,pig y){
- return x.jg<y.jg;
- }
- int main() {
- int h,b,n,x,cnt=0;
- cin>>n>>b;
- for(int i=1;i<=n;i++){
- cin>>a[i].jg>>a[i].sl;
- }
- sort(a+1,a+n+1,cmp);
- for(int i=1;i<=n;i++){
- if(b>=a[i].jg*a[i].sl){
- cnt+=a[i].sl; b-=a[i].jg*a[i].sl;
- } else if(b!=0){
- cnt++; b-=a[i].jg;
- }else {
- break;
- }
- } cout<<cnt;
- }