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