[백준] 16194번 카드 구매하기 2

거북이·2023년 7월 8일
0

백준[실버1]

목록 보기
43/67
post-thumbnail

💡문제접근

  • N개의 카드를 구매하기 위해 지불해야 하는 금액의 최솟값을 구하는 문제다. min을 이용하면 된다.

💡코드(메모리 : 31256KB, 시간 : 232ms)

import sys
input = sys.stdin.readline

N = int(input())
P_lst = [0] + list(map(int, input().strip().split()))

dp = [1e6] * 1001
dp[0] = 0

for i in range(N+1):
    for j in range(i+1):
        dp[i] = min(dp[i], dp[i-j] + P_lst[j])
print(dp[N])

💡소요시간 : 37m

0개의 댓글