#include #include #include using namespace std; typedef long long ll; const int N = 1e5 + 100; int n; ll m; int sa[N]; ll cal(ll x) { for (int i = 1; i <= n; i++) { x += sa[i]; if (x >= m) return x; if (x < 0) x = 0; } return x; } ll solve() { ll ma = 0, sum = 0; for (int i = 1; i <= n; i++) { sum += sa[i]; ma = max(ma, sum); } ll r1 = cal(0); if (r1 >= m) return 1; ll r2 = cal(r1); if (r2 >= m) return 2; if (r1 == r2) return -1; ll r3 = cal(r2); if (r3 >= m) return 3; m -= r2 + ma; r3 -= r2; if (m % r3 == 0) return m / r3 + 3; return m / r3 + 4; } int main() { //freopen("0.txt", "r", stdin); int T; scanf("%d", &T); while (T--) { scanf("%d%lld", &n, &m); for (int i = 1; i <= n; i++) scanf("%d", sa + i); printf("%lld\n", solve()); } return 0; }