#include<bits/stdc++.h>
using namespace std;
int n,m,x=10000000,a[2000005],b[2000005];
int main(){
cin>>n>>m;
for(int i=1;i<=n;i++)cin>>a[i];
for(int i=1;i<=n;i++){
cin>>b[i];
x=min(x,b[i]+a[i]);
}
int l=0,r=x,mid;
while(l<=r){
mid=(l+r)/2;
long long sum=0;
for(int i=1;i<=n;i++) if(a[i]<mid)sum+=mid-a[i];
if(sum>=m)r=mid-1;
else l=mid+1;
}
cout << mid;
return 0;
}
求调