//A sequence of N positive integers (10 < N < 100 000), each of them less than or equal 10000, and a positive integer S (S < 100 //000 000) are given. Write a program to find the minimal length of the subsequence of consecutive elements of the sequence, the //sum of which is greater than or equal to S.
#include <iostream>
using namespacestd;
#define N 100000 +10
int num[N];
void f(int n,int s)
{
int l =0,r = 0,sum =0,res = n + 1;
for(;;) {
while (sum < s && r < n) {
sum += num[r++];
}
if (sum < s) break;
res = min(res,r - l);
sum -= num[l];
l ++;
}
if (res > n) {
res = 0;
}
cout << res << endl;
}
int main()
{
int c;
cin >> c;
while (c --) {
int n,s;
cin >> n >> s;
for (int i =0; i < n; i ++) {
cin >>num[i];
}
f(n,s);
}
return0;
}