반응형

19947

https://www.acmicpc.net/problem/19947

 

19947번: 투자의 귀재 배주형

2020년에 학교로 복학한 주형이는 월세를 마련하기 위해서 군 적금을 깨고 복리 투자를 하려고 한다. 주형이가 하려는 투자에는 3가지 방법의 투자 방식이 있다.  1년마다 5%의 이율을 얻는 투자 (

www.acmicpc.net

[정답]

1
2
3
4
5
6
7
8
9
10
11
12
import sys
H, Y = map(int,sys.stdin.readline().split())
dp = [0]*11
dp[0= H
for i in range(1, Y+1):
  if i>=5:
    dp[i] = int(max(dp[i-1]*1.05, dp[i-3]*1.20, dp[i-5]*1.35))
  elif i>=3:
    dp[i] = int(max(dp[i-1]*1.05, dp[i-3]*1.20))
  else:
    dp[i] = int(dp[i-1]*1.05)
print(dp[Y])
cs

.

.

.

[풀이]

각 연도에 따라 최적의 이율을 선택할 수 있어야한다.

따라서 동적계획법, dynamic programming으로 접근하여

최대의 값을 dp 배열에 저장해준다.

 

p.s.

매 해 다른 이율을 적용시킬 수 있다는 점을 놓쳐 문제를 틀렸다.

동적계획법으로 푸니 정말 쉽다.

반응형

+ Recent posts