Algorithm/DP
[백준] 11057 '오르막 수' 파이썬(python)
나는SOU
2021. 12. 22. 00:00
https://www.acmicpc.net/problem/11057
11057번: 오르막 수
오르막 수는 수의 자리가 오름차순을 이루는 수를 말한다. 이때, 인접한 수가 같아도 오름차순으로 친다. 예를 들어, 2234와 3678, 11119는 오르막 수이지만, 2232, 3676, 91111은 오르막 수가 아니다. 수
www.acmicpc.net
n = int(input())
dp = list([[1] * 10])
for _ in range(n):
dp.append(list([0] * 10))
for i in range(1, n+1):
for j in range(0, 10):
for col in range(j+1):
dp[i][j] += dp[i-1][col]
print(dp[n][9] % 10007)
Point
- dp테이블을 만들고 첫수를 기준으로 점차 테이블 값들을 바꿔 활용하는 DP 문제
- DP문제의 핵심은 규칙을 수단과 방법을 가리지 않고 찾아내는 것이다.