Maximum Subarray import math def max_sub_array(nums): ans = -math.inf summ = 0 for num in nums: summ = max(num, summ + num) ans = max(ans, summ) return ans def pr(ok): print("Ok" if ok else "Error") pr(max_sub_array([-2,1,-3,4,-1,2,1,-5,4]) == 6) pr(max_sub_array([1]) == 1) pr(max_sub_array([5,4,-1,7,8]) == 23)