diff --git a/problems/src/array/hard.java b/problems/src/array/hard.java new file mode 100644 index 00000000..97b1eda3 --- /dev/null +++ b/problems/src/array/hard.java @@ -0,0 +1,65 @@ +class Solution { + public int maxSubArray(int[] nums) { + + int n= nums.length; + int i=0,sum=0,max=Integer.MIN_VALUE; + int cur,next=-1; + + i = nextpos(nums,0,n); + cur =i; + + while(imax) + { + max=sum; + } + + if(nums[i]>0 && cur>=next) + { + next=i; + } + + if(sum < 0) + { + sum=0; + if(cur0) + return i; + } + + return n; + } +}