#include <bits/stdc++.h> // NeOWami
using namespace std;
 
#define ft first
#define sc second
#define int long long
const int N = 2e5 + 20;
int n, ps[N], k;
int a[N];
void solve() {
    cin >> n >> k;
    for (int i = 1; i <= n; i++) cin >> a[i];
    fill(ps, ps + n + 5, 0);
 
    for (int i = 1; i <= n; i++) {
        int tmp = -1;
        int x = 0;
        if (a[i] % 3 == 0) {
            tmp = a[i] / 3;
        }
        x = max((int)1, a[i] / 4);
        while(x > 1) {
            int y = (a[i] - 2 * x) / x, z = a[i] % x;
            // cerr << "FUC " << a[i] << " " << x << " " << y << " " << z << "\n";
            if (y >= 1 && x + z <= y * x) break;
            x--;
        }
        if (tmp != -1) ps[tmp]++, ps[tmp + 1]--;
        ps[1]++;
        ps[x + 1]--;
        //         ps[a[i]]++;
        // ps[a[i] + 1]--;
        // cerr << 1 << " -> " << x << "| ";
        for (int j = 1; j * j <= a[i]; j++) {
            if (a[i] % j == 0) {
                if (j > x && j != tmp) {
                    ps[j]++;
                    ps[j + 1]--;
                    // cerr << j << " ";
                }
                if (a[i] / j != j && a[i] / j > x && a[i] / j != tmp) {
                    ps[a[i] / j]++;
                    ps[(a[i] / j) + 1]--;
                    // cerr << a[i] / j << " ";
                }
            }
        }
        // cerr << '\n';
    }
    // cerr << "\n";
    int ans = 1;
    for (int i = 1; i <= n; i++) {
        ps[i] = ps[i - 1] + ps[i];
        if (ps[i] + k >= n) ans = i;
        // cerr << ps[i] << " ";
    }
    // cerr << "\n-------\n";
    cout << ans << "\n";
}
signed main() {
    cin.tie(NULL)->sync_with_stdio(false);
    if(ifstream("Input.inp")) {
        freopen("Input.inp", "r", stdin);
        freopen("Output.out", "w", stdout);
    }
    int tt; cin >> tt;
    while(tt--) {
        solve();
    }
    return 0;
}
 
 
/*
15 1 7 10 17 14 17 12 7 4 10 4 15 2 6 2 14 5 
1  0 0 0  1  0  1  1  0 1 0  1  1 0 0 0 0  0
 
 
4 3 8
*/
				I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+IC8vIE5lT1dhbWkKdXNpbmcgbmFtZXNwYWNlIHN0ZDsKCiNkZWZpbmUgZnQgZmlyc3QKI2RlZmluZSBzYyBzZWNvbmQKI2RlZmluZSBpbnQgbG9uZyBsb25nCmNvbnN0IGludCBOID0gMmU1ICsgMjA7CmludCBuLCBwc1tOXSwgazsKaW50IGFbTl07CnZvaWQgc29sdmUoKSB7CiAgICBjaW4gPj4gbiA+PiBrOwogICAgZm9yIChpbnQgaSA9IDE7IGkgPD0gbjsgaSsrKSBjaW4gPj4gYVtpXTsKICAgIGZpbGwocHMsIHBzICsgbiArIDUsIDApOwoKICAgIGZvciAoaW50IGkgPSAxOyBpIDw9IG47IGkrKykgewogICAgICAgIGludCB0bXAgPSAtMTsKICAgICAgICBpbnQgeCA9IDA7CiAgICAgICAgaWYgKGFbaV0gJSAzID09IDApIHsKICAgICAgICAgICAgdG1wID0gYVtpXSAvIDM7CiAgICAgICAgfQogICAgICAgIHggPSBtYXgoKGludCkxLCBhW2ldIC8gNCk7CiAgICAgICAgd2hpbGUoeCA+IDEpIHsKICAgICAgICAgICAgaW50IHkgPSAoYVtpXSAtIDIgKiB4KSAvIHgsIHogPSBhW2ldICUgeDsKICAgICAgICAgICAgLy8gY2VyciA8PCAiRlVDICIgPDwgYVtpXSA8PCAiICIgPDwgeCA8PCAiICIgPDwgeSA8PCAiICIgPDwgeiA8PCAiXG4iOwogICAgICAgICAgICBpZiAoeSA+PSAxICYmIHggKyB6IDw9IHkgKiB4KSBicmVhazsKICAgICAgICAgICAgeC0tOwogICAgICAgIH0KICAgICAgICBpZiAodG1wICE9IC0xKSBwc1t0bXBdKyssIHBzW3RtcCArIDFdLS07CiAgICAgICAgcHNbMV0rKzsKICAgICAgICBwc1t4ICsgMV0tLTsKICAgICAgICAvLyAgICAgICAgIHBzW2FbaV1dKys7CiAgICAgICAgLy8gcHNbYVtpXSArIDFdLS07CiAgICAgICAgLy8gY2VyciA8PCAxIDw8ICIgLT4gIiA8PCB4IDw8ICJ8ICI7CiAgICAgICAgZm9yIChpbnQgaiA9IDE7IGogKiBqIDw9IGFbaV07IGorKykgewogICAgICAgICAgICBpZiAoYVtpXSAlIGogPT0gMCkgewogICAgICAgICAgICAgICAgaWYgKGogPiB4ICYmIGogIT0gdG1wKSB7CiAgICAgICAgICAgICAgICAgICAgcHNbal0rKzsKICAgICAgICAgICAgICAgICAgICBwc1tqICsgMV0tLTsKICAgICAgICAgICAgICAgICAgICAvLyBjZXJyIDw8IGogPDwgIiAiOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgaWYgKGFbaV0gLyBqICE9IGogJiYgYVtpXSAvIGogPiB4ICYmIGFbaV0gLyBqICE9IHRtcCkgewogICAgICAgICAgICAgICAgICAgIHBzW2FbaV0gLyBqXSsrOwogICAgICAgICAgICAgICAgICAgIHBzWyhhW2ldIC8gaikgKyAxXS0tOwogICAgICAgICAgICAgICAgICAgIC8vIGNlcnIgPDwgYVtpXSAvIGogPDwgIiAiOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIC8vIGNlcnIgPDwgJ1xuJzsKICAgIH0KICAgIC8vIGNlcnIgPDwgIlxuIjsKICAgIGludCBhbnMgPSAxOwogICAgZm9yIChpbnQgaSA9IDE7IGkgPD0gbjsgaSsrKSB7CiAgICAgICAgcHNbaV0gPSBwc1tpIC0gMV0gKyBwc1tpXTsKICAgICAgICBpZiAocHNbaV0gKyBrID49IG4pIGFucyA9IGk7CiAgICAgICAgLy8gY2VyciA8PCBwc1tpXSA8PCAiICI7CiAgICB9CiAgICAvLyBjZXJyIDw8ICJcbi0tLS0tLS1cbiI7CiAgICBjb3V0IDw8IGFucyA8PCAiXG4iOwp9CnNpZ25lZCBtYWluKCkgewogICAgY2luLnRpZShOVUxMKS0+c3luY193aXRoX3N0ZGlvKGZhbHNlKTsKICAgIGlmKGlmc3RyZWFtKCJJbnB1dC5pbnAiKSkgewogICAgICAgIGZyZW9wZW4oIklucHV0LmlucCIsICJyIiwgc3RkaW4pOwogICAgICAgIGZyZW9wZW4oIk91dHB1dC5vdXQiLCAidyIsIHN0ZG91dCk7CiAgICB9CiAgICBpbnQgdHQ7IGNpbiA+PiB0dDsKICAgIHdoaWxlKHR0LS0pIHsKICAgICAgICBzb2x2ZSgpOwogICAgfQogICAgcmV0dXJuIDA7Cn0KCgovKgoxNSAxIDcgMTAgMTcgMTQgMTcgMTIgNyA0IDEwIDQgMTUgMiA2IDIgMTQgNSAKMSAgMCAwIDAgIDEgIDAgIDEgIDEgIDAgMSAwICAxICAxIDAgMCAwIDAgIDAKCgo0IDMgOAoqLw==