ps | |
---|---|
링크 | programmers.co.kr/… |
출처 | 프로그래머스 |
문제 번호 | 49995 |
문제명 | 쿠키 구입 |
레벨 | Level 4 |
분류 |
애드혹 |
시간복잡도 | O(n^2) |
인풋사이즈 | n<=2,000 |
사용한 언어 | Python |
해결날짜 | 2021/01/25 |
"""Solution code for "Programmers 49995. 쿠키 구입".
Using prefix sum.
- Problem link: https://programmers.co.kr/learn/courses/30/lessons/49995
- Solution link: http://www.teferi.net/ps/problems/programmers/49995
"""
import itertools
def solution(cookie):
prefix_sums = set(itertools.accumulate([0] + cookie))
return max((abs(x - y) // 2
for x, y in itertools.combinations(prefix_sums, 2)
if (x + y) % 2 == 0 and (x + y) // 2 in prefix_sums),
default=0)