#include<bits/stdc++.h>
using namespace std;
unsigned long long c,i,l,r=1000000000000000000,n,s,k,h[1000001],a[1000001],mid;
int ef(){
while(l<r){
mid=(l+r)/2;
c=0;
for(i=1;i<=n;i++)
if(h[i]+a[i]*mid>=k)
c+=h[i]+a[i]+mid;
if(c>=s)
l=mid;
else
r=mid-1;
}
return l;
}
int main(){
scanf("%llu%llu%llu",&n,&s,&k);
for(i=1;i<=n;i++)
scanf("%llu",&h[i]);
for(i=1;i<=n;i++)
scanf("%llu",&a[i]);
cout<<ef();
return 0;
}