-
[Python] 프로그래머스 / Summer/Winter Coding / 쿠키 구입코딩테스트 2024. 9. 19. 22:29
Simple is the best
쫄지 말자. 구간합 문제는 누적리스트로 풀릴 때가 많다.
def solution(cookie): n = len(cookie) S = [0] * (n+1) for i in range(1, n+1) : S[i] = S[i - 1] + cookie[i - 1] #S[i]는 A[i-1]까지의 합 max_sum = 0 for m in range(n-1) : l = 0 r = n-1 while l<=m and m+1<=r : left = S[m+1] - S[l] #S[m+1]는 cookie[m]까지의 합 #S[l]은 cookie[l-1]까지의 합 right = S[r+1] - S[m+1] #S[r+1]는 cookie[r]까지의 합 #S[m+1]은 cookie[m]까지의 합 if left == right: max_sum = max(max_sum, left) break elif left > right : l += 1 else : r -= 1 return max_sum
'코딩테스트' 카테고리의 다른 글
[Python] 프로그래머스 / Summer/Winter Coding(2019) / 지형 이동 (0) 2024.09.22 꿀팁 : defaultdict(list)의 value를 deque()로 만들면 잘 작동되지 않는다. (5) 2024.09.20 [Python] 프로그래머스 / 2018 KAKAO BLIND RECRUITMENT / [1차] 추석 트래픽 (6) 2024.09.19 [Python] 프로그래머스 / 2018 KAKAO BLIND RECRUITMENT / [1차] 셔틀버스 (0) 2024.09.19 [Python] 프로그래머스 / 아이템 줍기 (0) 2024.09.19