#include <bits/stdc++.h>
using namespace std;
void solve(int cs) {
int n, k;
cin >> n >> k;
vector<int> a(n);
for (int i = 0; i < n; i++) cin >> a[i];
const int INF = 1e9;
vector<int> dp(n, INF), f(2e5 + 5, INF);
for (int i = 0; i < n; i++) {
if (i == 0) dp[i] = 0;
else {
dp[i] = dp[i - 1] + k;
for (int j = 1; j * j <= a[i]; j++) {
if (a[i] % j == 0) {
dp[i] = min(dp[i], f[j]);
dp[i] = min(dp[i], f[a[i] / j]);
}
}
}
for (int j = 1; j * j <= a[i]; j++) {
if (a[i] % j == 0) {
f[j] = min(f[j], dp[i] + a[i] / j);
f[a[i] / j] = min(f[a[i] / j], dp[i] + a[i] / (a[i] / j));
}
}
}
cout << dp[n - 1] << "\n";
}
int32_t main() {
cin.tie(0) -> sync_with_stdio(0);
int t = 1;
cin >> t;
for (int i = 1; i <= t; i++) {
solve(i);
}
return 0;
}