백준/다이나믹 프로그래밍

# 11052 카드 구매하기 -

bright_code 2020. 9. 13. 19:20
728x90
반응형
n = int(input())  # 사려는 카드의 개수 
data = [0]+list(map(int,input().split()))

# n 개를 사기 위해 가장 돈을 많이 내는 경우의 수.. 

dp = [0]*(n+1) 

dp[1] = data[1]

for i in range(2,n+1):
  for j in range(1,i+1):
    if dp[i] < dp[i-j] + data[j]:
      dp[i] = dp[i-j]+ data[j]
print(dp[n])
728x90
반응형