#include <iostream> #include <algorithm> using namespace std; #define MOD 10007 int N; int sum; int dp[1010][11]; int solve(int cnt, int num) { if(cnt == 1) { return 1; } if(dp[cnt][num] != 0) { return dp[cnt][num]; } for(int i = num; i >= 0; i--) { dp[cnt][num] = (dp[cnt][num] + solve(cnt-1, i)) % MOD; } return dp[cnt][num]; } int main(void) { // freopen("B11057_input.txt", "r", stdin); cin >> N; for(int i = 0; i <= 9; i++) { sum = (sum + solve(N, i)) % MOD; } cout << sum; return 0; } | cs |
'Baekjoon > DP' 카테고리의 다른 글
[백준 9465] 스티커 (DP) (C/C++) (★) (0) | 2020.01.17 |
---|---|
[백준 2193] 이친수 (DP) (C/C++) (0) | 2020.01.17 |
[백준 10844] 쉬운 계단수 (DP) (C/C++) (0) | 2020.01.17 |
[백준 9095] 1, 2, 3 더하기 (DP) (C/C++) (0) | 2020.01.16 |
[백준 11727] 2xN 타일링2 (DP) (C/C++) (0) | 2020.01.16 |