728x90
- 식량을 억기 위해 최소 한 칸 이상 떨어진 식량 창고 약탈
- 얻을 수 있는 식량의 최댓값
n = int(input()) # 식량 개수
array = list(map(int, input().split())) # 식량 데이터
# DP 테이블 초기화
d = [0] * 100
# 다이나믹 프로그래밍 (보텀업)
d[0] = array[0]
d[1] = max(array[0], array[1])
for i in range(2, n):
d[i] = max(d[i - 1], d[i - 2] + array[i])
# 결과 출력
print(d[n - 1])
반응형
'전.py' 카테고리의 다른 글
[python] 효율적인 화폐 구성 (0) | 2022.02.25 |
---|---|
[python] 1로 만들기 (0) | 2022.02.25 |
[python] 다이나믹 프로그래밍 (0) | 2022.02.25 |
[python] 정렬된 배열에서 특정 수의 개수 구하기 (0) | 2022.02.24 |
[python] 떡볶이 떡 만들기 (이진 탐색) (0) | 2022.02.24 |