//Subsequence
//尺取法
#include <iostream>
#include <cstring>
#include <cstdio>
using namespace std;
int a[1000010];//定义输入数组
int main()
{
int t;
cin>>t;
while(t--)
{
int n,i,r,j,flag=0,minn;
int flag1=0;//标记第一次遇到符合条件的序列
memset(a,0,sizeof(a));
cin>>n>>r;
for(i=1;i<=n;i++) { cin>>a[i];if(i>1) a[i]+=a[i-1];}//一边输入,一边转化为前缀和
int sum=0,p=0;
for(i=1;i<=n;i++)//后指针
{
for(j=p+1;j<i;j++)//前指针
{
if(a[i]-a[j]>=r)//如果找到符合条件的序列
{
if(!flag) {flag=1;minn=i-j;}//第一次找到,先给最小长度minn赋值
else if(i-j<minn) minn=i-j;//非第一次找到,更新最小长度minn
p=j;//标记前指针j的位置,下次直接从j后面的一个位置搜索
}
else break;//若不符合直接退出,因为再往后移和只会变小
}
}
if(!flag) cout<<"0"<<endl;//若找不到符合条件的,输出0
else cout<<minn<<endl;//输出最小长度
}
}