#include <iostream> #include <algorithm> #include <string.h> using namespace std; int T; int num; int dp[20]; int solve(int n) { if(n < 0) { return 0; } else if(n == 0) { return 1; } if(dp[n] != 0) { return dp[n]; } dp[n] = solve(n-1) + solve(n-2) + solve(n-3); return dp[n]; } int main(void) { // freopen("B9095_input.txt", "r", stdin); cin >> T; for(int i = 1; i <= T; i++) { cin >> num; cout << solve(num) << endl; } return 0; } | cs |
'Baekjoon > DP' 카테고리의 다른 글
[백준 11057] 오르막 수 (DP) (C/C++) (★) (0) | 2020.01.17 |
---|---|
[백준 10844] 쉬운 계단수 (DP) (C/C++) (0) | 2020.01.17 |
[백준 11727] 2xN 타일링2 (DP) (C/C++) (0) | 2020.01.16 |
[백준 11726] 2xN 타일링 (DP) (C/C++) (0) | 2020.01.16 |
[백준 1463] 1로 만들기 (DP) (C/C++) (0) | 2020.01.16 |