반응형
Notice
Recent Posts
Recent Comments
Link
관리 메뉴

짧은코딩

개미 전사 본문

반응형

 

교재 풀이

이렇게 바로 옆을 털면 지금 창고를 털지 못한다. 그리고 2번 떨어진 창고를 털면 지금 창고를 털 수 있다.

따라서 바로 옆 창고 vs (옆옆 창고 + 현재 창고) 이렇게 비교해서 더 큰 값을 찾아야 한다.

 

n = int(input())
ary = list(map(int, input().split()))

d = [0] * 100

d[0] = ary[0]
d[1] = max(ary[0], ary[1])
for i in range(2, n):
    d[i] = max(d[i-1], d[i - 2] + ary[i])

print(d[n-1])

이런 풀이가 나온다. 위에서 설명했듯이 옆 창고 vs (옆옆 창고 + 현재 창고)를 비교하면서 푸는 문제이다.

이 문제를 다시 풀면서 for문 안에 max에서 (옆옆 창고 + 현재 창고)에서 현재 창고는 ary로 사용을 해야한다는 점을 주의해야 한다.

반응형

'코딩 테스트(Python) > 이것이 취업을 위한 코딩 테스트다' 카테고리의 다른 글

효율적인 화폐 구성  (0) 2022.06.23
바닥 공사  (0) 2022.06.23
1로 만들기  (0) 2022.06.21
다이나믹 프로그래밍  (0) 2022.06.20
떡볶이 떡 만들기  (0) 2022.06.16
Comments