时间超限的题,求帮忙优化
这个代码能成功运行,但是时间超限,用的暴力计算法,求大佬提供优化算法,谢谢~
#include<stdio.h>
#include<stdlib.h>
int main(void){
int T,n,m,i,k,sum=0,min,a[100000];
scanf("%d",&T);
while(T--){
min=100001;
scanf("%d %d",&n,&m);
for(i=0;i<n;i++) scanf("%d",&a[i]);
for(i=0;i<n;i++){
k=0;
while(sum<m&&(i+k<n)){
sum+=a[i+k];
k++;
}
if(k<min&&sum>=m) min=k;
sum=0;
}
if(min!=100001) printf("%d\n",min);
else printf("0\n");
}
return 0;
}