#include <bits/stdc++.h> // NeOWami
using namespace std;
#define ft first
#define sc second
const int N = 1e6 + 5;
int n;
void solve() {
cin >> n;
vector<int> a;
for (int i = 1; i <= n; i++) {
int x;
cin >> x;
a.push_back(x);
}
int ans = 0;
for (int i = 0; i < a.size();) {
if (i + 1 < (int)a.size()) {
if (__gcd(a[i], a[i + 1]) == 1 || max(a[i], a[i + 1]) % min(a[i], a[i + 1]) == 0) {
i += 2;
}
else {
a.push_back(1);
a[i] = 1;
}
}
else {
a.push_back(1);
}
ans++;
}
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;
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+IC8vIE5lT1dhbWkKdXNpbmcgbmFtZXNwYWNlIHN0ZDsKCiNkZWZpbmUgZnQgZmlyc3QKI2RlZmluZSBzYyBzZWNvbmQKY29uc3QgaW50IE4gPSAxZTYgKyA1OwppbnQgbjsKdm9pZCBzb2x2ZSgpIHsKICAgIGNpbiA+PiBuOwogICAgdmVjdG9yPGludD4gYTsKICAgIGZvciAoaW50IGkgPSAxOyBpIDw9IG47IGkrKykgewogICAgICAgIGludCB4OwogICAgICAgIGNpbiA+PiB4OwogICAgICAgIGEucHVzaF9iYWNrKHgpOwogICAgfQogICAgaW50IGFucyA9IDA7CiAgICBmb3IgKGludCBpID0gMDsgaSA8IGEuc2l6ZSgpOykgewogICAgICAgIGlmIChpICsgMSA8IChpbnQpYS5zaXplKCkpIHsKICAgICAgICAgICAgaWYgKF9fZ2NkKGFbaV0sIGFbaSArIDFdKSA9PSAxIHx8IG1heChhW2ldLCBhW2kgKyAxXSkgJSBtaW4oYVtpXSwgYVtpICsgMV0pID09IDApIHsKICAgICAgICAgICAgICAgIGkgKz0gMjsKICAgICAgICAgICAgfQogICAgICAgICAgICBlbHNlIHsKICAgICAgICAgICAgICAgIGEucHVzaF9iYWNrKDEpOwogICAgICAgICAgICAgICAgYVtpXSA9IDE7CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgZWxzZSB7CiAgICAgICAgICAgIGEucHVzaF9iYWNrKDEpOwogICAgICAgIH0KICAgICAgICBhbnMrKzsKICAgIH0KICAgIGNvdXQgPDwgYW5zIDw8ICJcbiI7Cn0Kc2lnbmVkIG1haW4oKSB7CiAgICBjaW4udGllKE5VTEwpLT5zeW5jX3dpdGhfc3RkaW8oZmFsc2UpOwogICAgaWYoaWZzdHJlYW0oIklucHV0LmlucCIpKSB7CiAgICAgICAgZnJlb3BlbigiSW5wdXQuaW5wIiwgInIiLCBzdGRpbik7CiAgICAgICAgZnJlb3BlbigiT3V0cHV0Lm91dCIsICJ3Iiwgc3Rkb3V0KTsKICAgIH0KICAgIGludCB0dDsgY2luID4+IHR0OwogICAgd2hpbGUodHQtLSkgewogICAgICAgIHNvbHZlKCk7CiAgICB9CiAgICByZXR1cm4gMDsKfQ==