| 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)