題目:
https://leetcode.com/problems/minimum-positive-sum-subarray/description/
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
| class Solution { public: int minimumSumSubarray(vector<int>& nums, int l, int r) { int prefix[105]; prefix[0] = 0; for(int i = 0; i<nums.size(); ++i){ prefix[i+1] = nums[i] + prefix[i]; }
int ans = 0x3f3f3f3f; bool found = false; int tmp; for(int i=0; i<nums.size(); ++i){ for(int j=l; j<=r; ++j){ if(i + j > nums.size()) break; tmp = prefix[i + j] - prefix[i]; if(tmp > 0){ ans = min(ans, tmp); found = true; } } }
return found ? ans : -1; } };
|