알고리즘/BOJ

[BOJ 11057] 오르막 수

히더 2018. 7. 23. 14:10

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


1. dp를 통해 점화식을 구한다.

2. dp[i][j] = dp[i-1][j] + dp[i][j-1] 이라는 점화식을 코드화한다.


#include <iostream>

#include <algorithm>

using namespace std;


#define MAX_N 1001

#define mod 10007


int i, j, N, result;

int dp[MAX_N][10];


void input()

{

cin >> N;

result = 0;

}


void cal()

{

for (i = 0;i <= 9;i++) dp[1][i] = 1;


for (i = 2;i <= N;i++)

{

dp[i][0] = dp[i - 1][0];

for (j = 1;j <= 9;j++)

{

dp[i][j] = (dp[i - 1][j] + dp[i][j - 1]) % mod;

}

}


for (i = 0;i <= 9;i++) result = (result + dp[N][i]) % mod;

}


int main()

{

input(); cal();

cout << result << endl;

}