
变量简洁正确完整思路 滑动窗口,leftright是第一个最后一个,元素和add维持target,小于,right++add+= 大于等于更新ans,left++add-= class Solution { public: int minSubArrayLen(int target, vector<int>& nums) { int left=0,right=-1,add=0,ans=0x3f3f3f3f,n=nums.size(); while(right<n){ //cout<<left<<right<<' '<<add<<endl; if(add<target){ if(right==n-1)break; else add+=nums[++right]; } else{ ans=min(ans,right-left+1); add-=nums[left]; left++; } } return ans==0x3f3f3f3f?0:ans; } }; 踩过的坑 遇到bug立刻cout恰当的东西,如while开头的下标和关键量如cur、add
浙公网安备 33010602011771号