#include <bits/stdc++.h> using namespace std; #define ll long long #define ull unsigned long long #define pb(e) push_back(e) #define sv(a) sort(a.begin(),a.end()) #define sa(a,n) sort(a,a+n) #define mp(a,b) make_pair(a,b) #define vf first #define vs second #define ar array #define all(x) x.begin(),x.end() const int inf = 0x3f3f3f3f; const int mod = 1000000007; const double PI=3.14159265358979323846264338327950288419716939937510582097494459230; bool remender(ll a , ll b){return a%b;} //freopen("problemname.in", "r", stdin); //freopen("problemname.out", "w", stdout); void solve(){ int n; cin >> n; int t; cin >> t; vector<pair<int,int>> v; int a[n] , b[n]; for(int i = 0; i < n; i++)cin >> a[i]; for(int i = 0; i < n; i++)cin >> b[i]; for(int i = 0; i < n; i++)v.pb(mp(a[i] - b[i] , a[i])); sv(v); int ans = 0; for(int i = 0; i < n; i++){ if(v[i].vs > t)continue; int dif = (t - (v[i].vs - v[i].vf)) / v[i].vf; ans += dif; t -= v[i].vf * dif; } cout << ans << '\n'; } int main(){ ios_base::sync_with_stdio(false); cin.tie(NULL); int t;cin >> t;while(t--) solve(); return 0; }