FC贪心-1556. 月饼
作者:
小花猪
,
2023-02-28 14:42:45
,
所有人可见
,
阅读 168
L2-003 月饼
#include<bits/stdc++.h>
using namespace std;
struct mooncake
{
double cap;
double val;
double one;
}mc[10000];
bool cmp(mooncake a,mooncake b)
{
return (a.one>b.one);
}
int main()
{
int N;
double D;
cin>>N>>D;
for(int i=0;i<N;i++) cin>>mc[i].cap;
for(int i=0;i<N;i++) cin>>mc[i].val, mc[i].one=mc[i].val/mc[i].cap;
sort(mc,mc+N,cmp);
int i = 0;
double ans = 0, t = D;
while(D>0&&i<N){
t = t-mc[i].cap;
if(t>=0){
ans += mc[i].val;
D = t;
}else{
ans += mc[i].one*D;
D = t;
}
i++;
}
printf("%0.2f",ans);
}