동캄의 코딩도장

백준 11057 [오르막 수] 파이썬 본문

코테/BOJ

백준 11057 [오르막 수] 파이썬

동 캄 2022. 2. 9. 22:57

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

 

11057번: 오르막 수

오르막 수는 수의 자리가 오름차순을 이루는 수를 말한다. 이때, 인접한 수가 같아도 오름차순으로 친다. 예를 들어, 2234와 3678, 11119는 오르막 수이지만, 2232, 3676, 91111은 오르막 수가 아니다. 수

www.acmicpc.net

import math
n = int(input())
print(math.comb(9+n, n) % 10007)

중복조합을 사용하면 쉽게 풀 수 있다.

 

n=int(input())
s=[[0]*10 for i in range(1001)]
for i in range(10):
    s[1][i]=1
for i in range(2,1001):
    for j in range(10):
        for k in range(j+1):
            s[i][j]+=s[i-1][k]
print(sum(s[n])%10007)

dp로 풀면 다음과 같다.