#include <bits/stdc++.h>
using namespace std;
const int N = 2036;
double v;
double a[N], b[N];
int n;
int main() {
  cin >> n >> v;
  for (int i = (0); i < (int)(n); i++) cin >> a[i];
  for (int i = (0); i < (int)(n); i++) cin >> b[i];
  double mn = 1e20;
  for (int i = (0); i < (int)(n); i++) mn = min(b[i] / a[i], mn);
  double ans = 0;
  for (int i = (0); i < (int)(n); i++) ans += a[i] * mn;
  ans = min(ans, v);
  printf("%.20f\n", ans);
  return 0;
}
