3364

題目:
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;
}
};