1 2 3 4 5 6 7 8 9 10 11 12 13 14 | #include <stdio.h> int dp[1000] = { 0 }; int main() { int n; scanf("%d", &n); dp[2] = 1; for (int i = 3; i <= n; i++) { dp[i] = (dp[i - 1] + dp[i - 2])*(i - 1); } printf("%d", dp[n]); } | cs |
'알고리즘 > DP' 카테고리의 다른 글
정사각형 수 더블릿 (0) | 2019.02.18 |
---|---|
주사위 쌓기 더블릿 (0) | 2019.02.18 |
bits -더블릿 (0) | 2019.02.16 |
구간 차의 합 최대 - 더블릿 (0) | 2019.02.16 |
2662 기업투자 (0) | 2019.02.16 |