1 条题解
-
0
也许可以优化。。。
#include<bits/stdc++.h> using namespace std; struct farmer{ int price; int in_all; }; int main(){ int m,n; cin>>n>>m; farmer a[m]; for(int i=0;i<m;i++){ cin>>a[i].price>>a[i].in_all; } for(int i=0;i<m;i++){ for(int j=0;j<m-1;j++){ if(a[j].price>a[j+1].price){ int c=a[j].price; int d=a[j].in_all; a[j].price=a[j+1].price; a[j].in_all=a[j+1].in_all; a[j+1].price=c; a[j+1].in_all=d; } } } int all=0; int priceall=0; int i=0; while(all<=n){ all+=a[i].in_all; priceall+=a[i].in_all*a[i].price; i++; } if(all>n){ i--; all-=a[i].in_all; priceall-=a[i].in_all*a[i].price; priceall+=(n-all)*a[i].price; } cout<<priceall; }
反正能过,其他我不管
- 1
信息
- ID
- 209
- 时间
- 1000ms
- 内存
- 125MiB
- 难度
- 2
- 标签
- 递交数
- 28
- 已通过
- 14
- 上传者