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
13
14
15
16
17
18
|
def sol(money, years):
a_type, b_type, c_type = 1.05, 1.20, 1.35
dp = [0] * (years + 1)
dp[0] = money
for i in range(1, years + 1):
if i >= 5:
dp[i] = int(max(dp[i - 1] * a_type, dp[i - 3] * b_type, dp[i - 5] * c_type))
elif i >= 3:
dp[i] = int(max(dp[i - 1] * a_type, dp[i - 3] * b_type))
else:
dp[i] = int(dp[i - 1] * a_type)
return dp[years]
if __name__ == '__main__':
money, years = map(int, input().split())
print(sol(money, years))
|
cs |
전형적인 다이나믹 프로그래밍 문제죠
Typical Dynamic programming problem
반응형
'python-algorithm' 카테고리의 다른 글
백준 26307 Correct (0) | 2022.12.13 |
---|---|
백준 16208 귀찮음 (0) | 2022.12.12 |
백준 13333 Q-인덱스 (0) | 2022.12.12 |
백준 14912 숫자 빈도수 (0) | 2022.12.10 |
백준 15719 중복된 숫자 (0) | 2022.12.08 |
댓글