#include<iostream>
using namespace std;
void fun() {
  int n,c;
  cin>>n>>c;
  int a[n],b[n-1];
  for(int i=0; i<n; i++)
    cin>>a[i];
  for(int i=0; i<n-1; i++)
    cin>>b[i];
  int ans=9999999999,x=0,p=0,m=0;
  for(int i=0; i<n; i++) {
    ans=min(ans,x+(c-p+a[i]-1)/a[i]);
    m=max(m,a[i]);
    if(i<n-1&&p<b[i]) {
      int r=b[i]-p;
      x+=(r+m-1)/m;
      p+=m*((r+m-1)/m);
    }
    if(p>=c) {
      ans=min(ans,x);
      break;
    }
    if(i<n-1)
      p-=b[i];
    x++;
  }
  cout<<ans<<endl;
}
int main() {
  int t=1;
  cin>>t;
  while(t--) {
    fun();
  }
}