这是本文档旧的修订版!
#include<cstdio> using namespace std; int n,s,t,a[100005]; int min(int x,int y) {
if(x==-1) return x; if(x>y) return y; return x;
} int main() {
scanf("%d",&t); while(t--) { scanf("%d%d",&n,&s); for(int i=1;i<=n;i++) scanf("%d",&a[i]); a[n+1]=0; int left=1,right=1,length=100005; long long sum=a[1]; while(right<=n) { if(sum>=s) { length=min(length,right-left+1); sum-=a[left++]; } else sum+=a[++right]; } if(length==100005) length=0; printf("%d\n",length); } return 0;
}