您的位置:首页 > 其它

PAT(Basic Level)_1020_月饼

2017-07-24 03:27 435 查看
#include<iostream>
#include<cstdio>
#include<algorithm>

using namespace std;

struct Cake{
double amount;
double total;
double price;
}list[1000];

int cmp(Cake &A,Cake &B){
return A.price>B.price;
}

int main(){
int N,D;
cin>>N>>D;
for(int i=0;i<N;i++){
cin>>list[i].amount;
}
for(int i=0;i<N;i++){
cin>>list[i].total;
list[i].price=list[i].total/list[i].amount;
}
sort(list,list+N,cmp);

double benefit=0;
for(int i=0;i<N;i++){
if(D>=list[i].amount){
benefit+=list[i].total;
D-=list[i].amount;
}
else{
benefit+=list[i].price*D;
break;
}
}
printf("%.2lf",benefit);

return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  acm pat 1020