반응형
16194번: 카드 구매하기 2
첫째 줄에 민규가 구매하려고 하는 카드의 개수 N이 주어진다. (1 ≤ N ≤ 1,000) 둘째 줄에는 Pi가 P1부터 PN까지 순서대로 주어진다. (1 ≤ Pi ≤ 10,000)
www.acmicpc.net
코드
n = int(input())
p = list(map(int,input().split()))
dp = [0]*(n+1)
dp[1] = p[0]
dp[2] = min(dp[1]*2,p[1])
for i in range(3,n+1):
dp[i] = p[i-1]
for j in range(1,i//2+1):
dp[i] = min(dp[i],dp[j]+dp[i-j])
print(dp[-1])
반응형
'알고리즘 > dynamic programming' 카테고리의 다른 글
[프로그래머스][Python] 정수 삼각형 (0) | 2023.02.06 |
---|---|
[백준][Python] 15988번 1, 2, 3 더하기 3 (0) | 2022.12.29 |
[백준][Python] 16395번 파스칼의 삼각형 (0) | 2022.12.26 |
[백준][Python] 11060번 점프 점프 (0) | 2022.12.23 |
[백준][Python] 13699번 점화식 (0) | 2022.12.19 |
댓글