public class Solution { public int FindGreatestSumOfSubArray(int[] array) { int N = array.length; int i = 0, tmp = 0, max = Integer.MIN_VALUE; while(i < N) { tmp += array[i]; max = Math.max(max, tmp); if(tmp < 0) { tmp = 0; } i++; } return max; } }