CodeKata - python

김성진·2020년 11월 8일
0
post-thumbnail

문제

숫자로 이루어진 리스트 nums를 인자로 주면,
그 안에서 어떤 연속적인 요소를 더했을 때 가장 큰 값이 나오나요?
가장 큰 값을 찾아 return해주세요.

Input: [-2,1,-3,4,-1,2,1,-5,4]
Output: 6
설명: [4,-1,2,1] 를 더하면 6이 가장 크기 때문

풀이

def maxSubArray(nums):
    max_so_far = curr_so_far = -float('inf')
    for i in range(len(nums)):
        curr_so_far += nums[i] # Add curr number
        
        curr_so_far = max(curr_so_far, nums[i])
        
        max_so_far = max(max_so_far, curr_so_far) # Update answer
        
    return max_so_far
print(maxSubArray([-2,1, 3, 4, -3, 3]))
profile
multi-national communicator with programming (back-end)

0개의 댓글