https://www.acmicpc.net/problem/11058
1. dp의 값을 모두 1번의 경우 A로 출력할때만으로 초기화해준다.
2. 붙여넣기를 하려면 전체선택 + 복사가 필요하다. 현재 인덱스 기준으로 3번째 뒤부터 붙여넣기를 해주는 낮은 수부터 높은수 순으로 bottom-up 방식으로 진행해준다.
n = int(input())
dp = [i for i in range(n+1)]
for i in range(1, n-2):
for j in range(i+3, n+1):
dp[j] = max(dp[j], dp[i]*(j-i-1))
print(dp[n])
'알고리즘 > BOJ' 카테고리의 다른 글
[Python] 백준 2624번: 동전 바꿔주기 (0) | 2021.10.15 |
---|---|
[Python] 백준 2602번: 돌다리 건너기 (0) | 2021.10.14 |
[Python] 백준 2616번: 소형기관차 (0) | 2021.10.14 |
[Python] 백준 2482번: 색상환 (0) | 2021.10.13 |
[Python] 백준 2688번: 줄어들지 않아 (0) | 2021.10.13 |
댓글