#include<bits/stdc++.h>
using namespace std;
#define endl '\n'
#define int long long int
const int MOD = 1000000007;
const int MOD2 = 998244353;
const int INF = LLONG_MAX / 2;
const int MAXN = 100000;
int primes[1000000];
/*void seive() {
fill(primes, primes + 1000000, 1);
primes[0] = primes[1] = 0;
for (int i = 2; i * i < 1000000; i++) {
if (primes[i]) {
for (int j = i * i; j < 1000000; j += i) {
primes[j] = 0;
}
}
}
}
bool isPrime(int n) {
if (n <= 1) return false;
for (int i = 2; i * i <= n; i++) {
if (n % i == 0) return false;
}
return true;
}
int gcd(int a, int b) {
if (a == 0) return b;
return gcd(b % a, a);
}
int power(int a, int b, int mod) {
int res = 1;
a %= mod;
while (b > 0) {
if (b & 1) res = res * a % mod;
a = a * a % mod;
b >>= 1;
}
return res;
}
// nCr % MOD for n < MOD
int nCrModP(int n, int r) {
if (r > n) return 0;
if (r == 0 || r == n) return 1;
int numerator = 1, denominator = 1;
for (int i = 0; i < r; i++) {
numerator = (numerator * (n - i)) % MOD;
denominator = (denominator * (i + 1)) % MOD;
}
return (numerator * power(denominator, MOD - 2, MOD)) % MOD;
}
// Lucas's Theorem
int lucas(int n, int r) {
if (r == 0) return 1;
return (lucas(n / MOD, r / MOD) * nCrModP(n % MOD, r % MOD)) % MOD;
}*/
bool isPossible(vector<int>required,vector<int>available,vector<int>cost, int budget, int n, int mid){
for(int i = 0 ; i<n ; i++){
required[i] = (mid*required[i]);
}
int sum = 0;
for(int i = 0 ; i<n ; i++){
if(required[i]>available[i]){
sum += ((required[i]-available[i])*cost[i]);
}
}
return sum<=budget;
}
void solve() {
int n,budget;
cin>>n>>budget;
vector<int>required(n),available(n),cost(n);
for(int i = 0 ; i<n ; i++){
cin>>required[i];
}
for(int i = 0 ; i<n ; i++){
cin>>available[i];
}
for(int i = 0 ; i<n ; i++){
cin>>cost[i];
}
int l = 0 ,r=1e9;
int ans = 0;
while(l<=r){
int mid = (l+r)/2;
if(isPossible(required,available,cost,budget,n,mid)){
ans = mid;
l = mid+1;
}
else{
r = mid-1;
}
}
cout<<ans<<endl;
}
signed main() {
ios::sync_with_stdio(false); cin.tie(NULL);
int t;
cin >> t;
while (t--) {
solve();
}
return 0;
}
I2luY2x1ZGU8Yml0cy9zdGRjKysuaD4KdXNpbmcgbmFtZXNwYWNlIHN0ZDsKI2RlZmluZSBlbmRsICdcbicKI2RlZmluZSBpbnQgbG9uZyBsb25nIGludApjb25zdCBpbnQgTU9EID0gMTAwMDAwMDAwNzsKY29uc3QgaW50IE1PRDIgPSA5OTgyNDQzNTM7CmNvbnN0IGludCBJTkYgPSBMTE9OR19NQVggLyAyOwpjb25zdCBpbnQgTUFYTiA9IDEwMDAwMDsKaW50IHByaW1lc1sxMDAwMDAwXTsKCi8qdm9pZCBzZWl2ZSgpIHsKICAgIGZpbGwocHJpbWVzLCBwcmltZXMgKyAxMDAwMDAwLCAxKTsKICAgIHByaW1lc1swXSA9IHByaW1lc1sxXSA9IDA7CiAgICBmb3IgKGludCBpID0gMjsgaSAqIGkgPCAxMDAwMDAwOyBpKyspIHsKICAgICAgICBpZiAocHJpbWVzW2ldKSB7CiAgICAgICAgICAgIGZvciAoaW50IGogPSBpICogaTsgaiA8IDEwMDAwMDA7IGogKz0gaSkgewogICAgICAgICAgICAgICAgcHJpbWVzW2pdID0gMDsKICAgICAgICAgICAgfQogICAgICAgIH0KICAgIH0KfQoKYm9vbCBpc1ByaW1lKGludCBuKSB7CiAgICBpZiAobiA8PSAxKSByZXR1cm4gZmFsc2U7CiAgICBmb3IgKGludCBpID0gMjsgaSAqIGkgPD0gbjsgaSsrKSB7CiAgICAgICAgaWYgKG4gJSBpID09IDApIHJldHVybiBmYWxzZTsKICAgIH0KICAgIHJldHVybiB0cnVlOwp9CgppbnQgZ2NkKGludCBhLCBpbnQgYikgewogICAgaWYgKGEgPT0gMCkgcmV0dXJuIGI7CiAgICByZXR1cm4gZ2NkKGIgJSBhLCBhKTsKfQoKaW50IHBvd2VyKGludCBhLCBpbnQgYiwgaW50IG1vZCkgewogICAgaW50IHJlcyA9IDE7CiAgICBhICU9IG1vZDsKICAgIHdoaWxlIChiID4gMCkgewogICAgICAgIGlmIChiICYgMSkgcmVzID0gcmVzICogYSAlIG1vZDsKICAgICAgICBhID0gYSAqIGEgJSBtb2Q7CiAgICAgICAgYiA+Pj0gMTsKICAgIH0KICAgIHJldHVybiByZXM7Cn0KCi8vIG5DciAlIE1PRCBmb3IgbiA8IE1PRAppbnQgbkNyTW9kUChpbnQgbiwgaW50IHIpIHsKICAgIGlmIChyID4gbikgcmV0dXJuIDA7CiAgICBpZiAociA9PSAwIHx8IHIgPT0gbikgcmV0dXJuIDE7CgogICAgaW50IG51bWVyYXRvciA9IDEsIGRlbm9taW5hdG9yID0gMTsKICAgIGZvciAoaW50IGkgPSAwOyBpIDwgcjsgaSsrKSB7CiAgICAgICAgbnVtZXJhdG9yID0gKG51bWVyYXRvciAqIChuIC0gaSkpICUgTU9EOwogICAgICAgIGRlbm9taW5hdG9yID0gKGRlbm9taW5hdG9yICogKGkgKyAxKSkgJSBNT0Q7CiAgICB9CiAgICByZXR1cm4gKG51bWVyYXRvciAqIHBvd2VyKGRlbm9taW5hdG9yLCBNT0QgLSAyLCBNT0QpKSAlIE1PRDsKfQoKLy8gTHVjYXMncyBUaGVvcmVtCmludCBsdWNhcyhpbnQgbiwgaW50IHIpIHsKICAgIGlmIChyID09IDApIHJldHVybiAxOwogICAgcmV0dXJuIChsdWNhcyhuIC8gTU9ELCByIC8gTU9EKSAqIG5Dck1vZFAobiAlIE1PRCwgciAlIE1PRCkpICUgTU9EOwp9Ki8KYm9vbCBpc1Bvc3NpYmxlKHZlY3RvcjxpbnQ+cmVxdWlyZWQsdmVjdG9yPGludD5hdmFpbGFibGUsdmVjdG9yPGludD5jb3N0LCBpbnQgYnVkZ2V0LCBpbnQgbiwgaW50IG1pZCl7CiAgICBmb3IoaW50IGkgPSAwIDsgaTxuIDsgaSsrKXsKICAgICAgICByZXF1aXJlZFtpXSA9IChtaWQqcmVxdWlyZWRbaV0pOwogICAgfQogICAgaW50IHN1bSA9IDA7CiAgICBmb3IoaW50IGkgPSAwIDsgaTxuIDsgaSsrKXsKICAgICAgICBpZihyZXF1aXJlZFtpXT5hdmFpbGFibGVbaV0pewogICAgICAgICAgc3VtICs9ICgocmVxdWlyZWRbaV0tYXZhaWxhYmxlW2ldKSpjb3N0W2ldKTsKICAgICAgICB9CiAgICB9CiAgICByZXR1cm4gc3VtPD1idWRnZXQ7Cn0Kdm9pZCBzb2x2ZSgpIHsKICAgIGludCBuLGJ1ZGdldDsKICAgIGNpbj4+bj4+YnVkZ2V0OwogICAgdmVjdG9yPGludD5yZXF1aXJlZChuKSxhdmFpbGFibGUobiksY29zdChuKTsKICAgIGZvcihpbnQgaSA9IDAgOyBpPG4gOyBpKyspewogICAgICAgIGNpbj4+cmVxdWlyZWRbaV07CiAgICB9CiAgICBmb3IoaW50IGkgPSAwIDsgaTxuIDsgaSsrKXsKICAgICAgICBjaW4+PmF2YWlsYWJsZVtpXTsKICAgIH0KICAgIGZvcihpbnQgaSA9IDAgOyBpPG4gOyBpKyspewogICAgICAgIGNpbj4+Y29zdFtpXTsKICAgIH0KICAgIGludCBsID0gMCAscj0xZTk7CiAgICBpbnQgYW5zID0gMDsKICAgIHdoaWxlKGw8PXIpewogICAgICAgIGludCBtaWQgPSAobCtyKS8yOwogICAgICAgIGlmKGlzUG9zc2libGUocmVxdWlyZWQsYXZhaWxhYmxlLGNvc3QsYnVkZ2V0LG4sbWlkKSl7CiAgICAgICAgICAgYW5zID0gbWlkOwogICAgICAgICAgIGwgPSBtaWQrMTsKICAgICAgICB9CiAgICAgICAgZWxzZXsKICAgICAgICAgICAgciA9IG1pZC0xOwogICAgICAgIH0KICAgIH0KICAgIGNvdXQ8PGFuczw8ZW5kbDsKfQpzaWduZWQgbWFpbigpIHsKICAgIGlvczo6c3luY193aXRoX3N0ZGlvKGZhbHNlKTsgY2luLnRpZShOVUxMKTsKICAgIGludCB0OwogICAgY2luID4+IHQ7CiAgICB3aGlsZSAodC0tKSB7CiAgICAgICAgc29sdmUoKTsKICAgIH0KICAgIHJldHVybiAwOwp9Cg==