# LeetCode – Arrays – Minimum Value to Get Positive Step by Step Sum

Given an array of integers `nums`, you start with an initial positive value startValue.

In each iteration, you calculate the step by step sum of startValue plus elements in `nums` (from left to right).

Return the minimum positive value of startValue such that the step by step sum is never less than 1.

Example 1:

```Input: nums = [-3,2,-3,4,2]
Output: 5
Explanation: If you choose startValue = 4, in the third iteration your step by step sum is less than 1.
step by step sum
startValue = 4 | startValue = 5 | nums
(4 -3 ) = 1  | (5 -3 ) = 2    |  -3
(1 +2 ) = 3  | (2 +2 ) = 4    |   2
(3 -3 ) = 0  | (4 -3 ) = 1    |  -3
(0 +4 ) = 4  | (1 +4 ) = 5    |   4
(4 +2 ) = 6  | (5 +2 ) = 7    |   2
```

Example 2:

```Input: nums = [1,2]
Output: 1
Explanation: Minimum start value should be positive.
```

Example 3:

```Input: nums = [1,-2,-3]
Output: 5```
``class Solution {    public int minStartValue(int[] nums) {        List<Integer> numList = Arrays.stream(nums).boxed().collect(Collectors.toList());        int result = 1;        Collections.sort(numList);        System.out.println(numList);        if(numList.get(0) >= 1) return result;        else{            int i=1;            while(true){                int sum=i;                boolean found = true;                for(int j=0;j<nums.length;j++){                    sum = sum+nums[j];                    if(sum<=0){                        found = false;                        break;                    }                }                if(found){                    result = i;                    break;                }                i++;            }        }        return result;    }}``