18. 다이나믹 프로그래밍 : 개미 전사

2021. 11. 17. 19:47파이썬/알고리즘

개미가 서로 인접하지 않은 식량창고를 턴다. 이때 가장 많은 식량을 구할 수 있는 방법을 구하시오.

최소한 한 칸 이상 떨어진 식량 창고를 털어야 한다.

 

input : 4 (창고의 개수)

1 3 1 5 (각 창고에 저장된 식량)

output :

8

memory = [0] * 1001

N = int(input())

store = list(map(int,input().split()))

memory[0] = store[0]
memory[1] = max(store[0], store[1]) 

for i in range(2,N):
  memory[i] = max(memory[i-1], memory[i-2]+store[i])


print(memory[N-1])

이제 좀 이해가 가기 시작한다!~! 힘내자 장윤식!!

반응형