#include <iostream>
#include <iomanip>
#include <cmath>
#include <algorithm>
#include <bits/stdc++.h>
#include <set>
#include <ext/pb_ds/assoc_container.hpp>
#include <ext/pb_ds/tree_policy.hpp>
#include <map>
#define ll long long
using namespace __gnu_pbds;
using namespace std;
template <class T>
using ordered_set = tree<T , null_type , less<T> , rb_tree_tag , tree_order_statistics_node_update>;
template <class T>
using ordered_set1 = tree<T , null_type , greater<T> , rb_tree_tag , tree_order_statistics_node_update>;
// less<T>/greater<T> = ascending/descending.
// less_equal<>/greater_equal<> for ordered multiset
// ordered_multiset note : s.find(), s.erase() don't work + s.upper_bound() and s.lower_bound() swap jobs;
void fastIO(void) {
ios_base::sync_with_stdio(false);
cin.tie(NULL);
cout.tie(NULL);
//freopen("stdin", "r", stdin);
//freopen("stdout", "w", stdout);
}
ll n,k;
struct ingredient {
ll cookiecount;
ll remainder;
ll req;
};
bool cmp(ingredient x, ingredient y) {
return x.cookiecount<y.cookiecount;
}
bool cmp2(ingredient x,ll y) {
return x.cookiecount < y;
}
bool enough(ll cookienum,vector<ingredient> &can) {
ll lastindex=lower_bound(can.begin(),can.end(),cookienum,cmp2)-can.begin();
ll temp = k;
for (ll i =0; i<lastindex; i++) {
if (temp<=0) return false;
temp = temp - (cookienum-can[i].cookiecount-1)*can[i].req - can[i].remainder;
}
return true;
}
int main() {
fastIO();
cin>>n>>k;
vector<ll> owned(n);
vector<ingredient> v(n);
for (ll i = 0; i<n; i++) {
cin>>v[i].req;
}
for (ll i = 0; i<n; i++) {
cin>>owned[i];
}
for (ll i = 0; i<n; i++) {
v[i].cookiecount=owned[i]/v[i].req;
v[i].remainder=v[i].req-(owned[i]%v[i].req);
}
sort(v.begin(),v.end(),cmp);
ll l = 0, r = 2e9,mid,ans=0;
while (l<=r) {
mid=(l+r)/2;
if (enough(mid,v)){
ans=mid;
l = mid + 1;
}
else {
r = mid - 1;
}
}
cout<<ans;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8aW9tYW5pcD4KI2luY2x1ZGUgPGNtYXRoPgojaW5jbHVkZSA8YWxnb3JpdGhtPgojaW5jbHVkZSA8Yml0cy9zdGRjKysuaD4KI2luY2x1ZGUgPHNldD4KI2luY2x1ZGUgPGV4dC9wYl9kcy9hc3NvY19jb250YWluZXIuaHBwPgojaW5jbHVkZSA8ZXh0L3BiX2RzL3RyZWVfcG9saWN5LmhwcD4KI2luY2x1ZGUgPG1hcD4KI2RlZmluZSBsbCBsb25nIGxvbmcKdXNpbmcgbmFtZXNwYWNlIF9fZ251X3BiZHM7CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CnRlbXBsYXRlIDxjbGFzcyBUPgp1c2luZyBvcmRlcmVkX3NldCA9IHRyZWU8VCAsIG51bGxfdHlwZSAsIGxlc3M8VD4gLCByYl90cmVlX3RhZyAsIHRyZWVfb3JkZXJfc3RhdGlzdGljc19ub2RlX3VwZGF0ZT47CnRlbXBsYXRlIDxjbGFzcyBUPgp1c2luZyBvcmRlcmVkX3NldDEgPSB0cmVlPFQgLCBudWxsX3R5cGUgLCBncmVhdGVyPFQ+ICwgcmJfdHJlZV90YWcgLCB0cmVlX29yZGVyX3N0YXRpc3RpY3Nfbm9kZV91cGRhdGU+OwovLyBsZXNzPFQ+L2dyZWF0ZXI8VD4gPSBhc2NlbmRpbmcvZGVzY2VuZGluZy4KLy8gbGVzc19lcXVhbDw+L2dyZWF0ZXJfZXF1YWw8PiBmb3Igb3JkZXJlZCBtdWx0aXNldAovLyBvcmRlcmVkX211bHRpc2V0IG5vdGUgOiBzLmZpbmQoKSwgcy5lcmFzZSgpIGRvbid0IHdvcmsgKyBzLnVwcGVyX2JvdW5kKCkgYW5kIHMubG93ZXJfYm91bmQoKSBzd2FwIGpvYnM7CnZvaWQgZmFzdElPKHZvaWQpIHsKICAgIGlvc19iYXNlOjpzeW5jX3dpdGhfc3RkaW8oZmFsc2UpOwogICAgY2luLnRpZShOVUxMKTsKICAgIGNvdXQudGllKE5VTEwpOwogICAgLy9mcmVvcGVuKCJzdGRpbiIsICJyIiwgc3RkaW4pOwogICAgLy9mcmVvcGVuKCJzdGRvdXQiLCAidyIsIHN0ZG91dCk7Cn0KbGwgbixrOwpzdHJ1Y3QgaW5ncmVkaWVudCB7CiAgICBsbCBjb29raWVjb3VudDsKICAgIGxsIHJlbWFpbmRlcjsKICAgIGxsIHJlcTsKfTsKYm9vbCBjbXAoaW5ncmVkaWVudCB4LCBpbmdyZWRpZW50IHkpIHsKICAgIHJldHVybiB4LmNvb2tpZWNvdW50PHkuY29va2llY291bnQ7Cn0KYm9vbCBjbXAyKGluZ3JlZGllbnQgeCxsbCB5KSB7CiAgICByZXR1cm4geC5jb29raWVjb3VudCA8IHk7Cn0KYm9vbCBlbm91Z2gobGwgY29va2llbnVtLHZlY3RvcjxpbmdyZWRpZW50PiAmY2FuKSB7CiAgICBsbCBsYXN0aW5kZXg9bG93ZXJfYm91bmQoY2FuLmJlZ2luKCksY2FuLmVuZCgpLGNvb2tpZW51bSxjbXAyKS1jYW4uYmVnaW4oKTsKICAgIGxsIHRlbXAgPSBrOwogICAgZm9yIChsbCBpID0wOyBpPGxhc3RpbmRleDsgaSsrKSB7CiAgICAgICAgaWYgKHRlbXA8PTApIHJldHVybiBmYWxzZTsKICAgICAgICB0ZW1wID0gdGVtcCAtIChjb29raWVudW0tY2FuW2ldLmNvb2tpZWNvdW50LTEpKmNhbltpXS5yZXEgLSBjYW5baV0ucmVtYWluZGVyOwogICAgfQogICAgcmV0dXJuIHRydWU7Cn0KaW50IG1haW4oKSB7CiAgICBmYXN0SU8oKTsKICAgIGNpbj4+bj4+azsKICAgIHZlY3RvcjxsbD4gb3duZWQobik7CiAgICB2ZWN0b3I8aW5ncmVkaWVudD4gdihuKTsKICAgIGZvciAobGwgaSA9IDA7IGk8bjsgaSsrKSB7CiAgICAgICAgY2luPj52W2ldLnJlcTsKICAgIH0KICAgIGZvciAobGwgaSA9IDA7IGk8bjsgaSsrKSB7CiAgICAgICAgY2luPj5vd25lZFtpXTsKICAgIH0KICAgIGZvciAobGwgaSA9IDA7IGk8bjsgaSsrKSB7CiAgICAgICAgdltpXS5jb29raWVjb3VudD1vd25lZFtpXS92W2ldLnJlcTsKICAgICAgICB2W2ldLnJlbWFpbmRlcj12W2ldLnJlcS0ob3duZWRbaV0ldltpXS5yZXEpOwogICAgfQogICAgc29ydCh2LmJlZ2luKCksdi5lbmQoKSxjbXApOwogICAgbGwgbCA9IDAsIHIgPSAyZTksbWlkLGFucz0wOwogICAgd2hpbGUgKGw8PXIpIHsKICAgICAgICBtaWQ9KGwrcikvMjsKICAgICAgICBpZiAoZW5vdWdoKG1pZCx2KSl7CiAgICAgICAgICAgIGFucz1taWQ7CiAgICAgICAgICAgIGwgPSBtaWQgKyAxOwogICAgICAgIH0KICAgICAgICBlbHNlIHsKICAgICAgICAgICAgciA9IG1pZCAtIDE7CiAgICAgICAgfQogICAgfQogICAgY291dDw8YW5zOwp9Cg==