function maxSubArray(arr: number[]) {
let maxSum: number = -Infinity
let currentSum: number = 0
const size: number = arr.length;
for (let i: number = 0; i < size; i++) {
currentSum = Math.max(arr[i], currentSum + arr[i])
maxSum = Math.max(currentSum, maxSum)
}
return maxSum
}
const arr: number[] = [1, -2, 2, -3, 4, -1, -1, 2, 3, -5, 4]; // 4 + -1 + -1 + 2 + 3 = 7
console.log(maxSubArray(arr));
/*
run:
7
*/