大严 • 14小时前
using namespace std; int a[100005]; int s1[100005]; int main(){
int t;
int n,s;
scanf("%d",&t);
while(t--)
{
scanf("%d%d",&n,&s);
for(int i=1;i<=n;i++)
{
scanf("%d",&a[i]);
s1[i]=s1[i-1]+a[i];
}
int min=100000+1;
int x=0;
int l=1;
int r=1;
int sum=a[l];
while(l<=r&&r<=n)
{
if(sum>=s)
{
int len=r-l+1;
if(len<min)
{
x=1;
min=len;
}
sum-=a[l];
l++;
}
else
{
r++;
sum+=a[r];
}
}
if(x==0)
{
cout<<0<<endl;
}
else
{
printf("%d\n",min);
}
}
return 0;
}
评论:
请先登录,才能进行评论