티스토리 뷰

Python/이코테

8-3. 개미 전사

JH_ 2022. 7. 15. 00:12
n = int(input())
k = list(map(int, input().split()))

d = [0]*100  # 식량창고 개수

d[0] = k[0]
d[1] = max(k[0], k[1])
# (i-1)번째 창고를 털면 i를 털 수 없음 = d(i-1)
# (i-2)번째 창고를 털면 i를 털 수 있음 = d(i-2)+k[i]
# 둘 중 더 큰 곳을 찾으면 됨
for i in range(2, n):
    d[i] = max(d[i-1], d[i-2]+k[i])
    # print(f'd[{i}] = max({d[i-1]}, {d[i-2]+k[i]})')
print(d[n-1])

'Python > 이코테' 카테고리의 다른 글

8-5. 효율적인 화폐 구성  (0) 2022.07.17
8-4. 바닥 공사  (0) 2022.07.15
8-1. 다이나믹 프로그래밍  (0) 2022.07.13
8-2. 1로 만들기  (0) 2022.07.10
7-1. 범위를 반 씩 줄여가는 탐색  (0) 2022.07.10
댓글
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday