#include<bits/stdc++.h>
using namespace std;
struct node{
double a,b,c;
double m;
}q[1005];
int com(node x,node y)
{
return x.c>y.c;
}
int main()
{
int n;
double d,t;
double num;
cin>>n>>d;
for(int i=1;i<=n;i++)
{
cin>>q[i].a;
}
for(int i=1;i<=n;i++)
{
cin>>q[i].b;
q[i].c=q[i].b/q[i].a;
}
sort(q+1,q+n+1,com);
for(int i=1;i<=n;i++)
{
if(d>=q[i].a)
{
q[i].m=q[i].a;
d=d-q[i].m;
}
else
{
q[i].m=d;
t=i;
break;
}
if(i==n)t=n;
}
for(int i=1;i<=t;i++)
{
num+=q[i].m*q[i].c;
}
printf("%.2lf",num);
return 0;
}
L2-003 月饼 (25分)
最新推荐文章于 2023-04-06 20:00:42 发布