T463904 收获
#include<bits/stdc++.h>
using namespace std;
int s[100010],m,a[100010],b[100010],h,n;
int k;
int v[100010][2];
int main()
{
ios::sync_with_stdio(0);
cin >> n >> m >> h;
for(int i = 1;i <= n;i ++)
{
cin >> a[i];
v[i][1] = i + 1;
v[i][0] = i - 1;
}
for(int i = 1;i <= n;i ++)
{
cin >> b[i];
b[i] = (h - a[i]) / b[i] + 1;
}
v[0][1] = 1;
v[n + 1][0] = n;
while(m --)
{
int i = 0;
while(1)
{
i = v[i][1];
if(i > n) break;
if(b[i] > k)
{
k ++;
}
else
{
v[v[i][1]][0] = v[i][0];
v[v[i][0]][1] = v[i][1];
}
}
}
printf("%d\n",k);
return 0;
}