int minSubArrayLen(int target, int* nums, int numsSize) {
int sum=nums[0],head=0,tail=0,min=INT_MAX;
int t=0;
for(int i=0;i<numsSize;i++){
t+=nums[i];
}
if(t<target) return 0;
while(head<=tail&&tail<numsSize){
if(sum>=target){
if(min>tail-head+1) min=tail-head+1;
sum-=nums[head++];
}else{
if(tail==numsSize-1) break;
tail++;
sum+=nums[tail];
}
}
return min;
}
还得练,DEBUG了半天
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。