#include<stdio.h>
#include<cstdlib>
#include<iostream>
#include<bits/stdc++.h>
#define IOS ios::sync_with_stdio(0);cin.tie(0);cout.tie(0);
using namespace std;
struct str
{
double b,a;
double c;
} s[10010];
bool cmp(str a,str b)
{
return a.c>b.c;
}
int main()
{
IOS
int n,m;
int i,j,k,l,x,y;
double sum;
y=0;
sum=0;
cin>>n>>m;
for(i=0;i<n;i++)
{
cin>>s[i].a;
}
for(i=0;i<n;i++)
{
cin>>s[i].b;
s[i].c=s[i].b/s[i].a;
}
sort(s,s+n,cmp);
for(i=0;i<n;i++)
{
if(m>s[i].a)
{
sum=sum+s[i].b;
m=m-s[i].a;
}
else
{
sum=sum+double(m)*s[i].c;
break;
}
}
cout<<fixed<<setprecision(2)<<sum<<endl;
return 0;
}