#include <iostream> #include <algorithm> using namespace std; int N; long long dp[110]; long long solve(int num) { if(1 <= num && num <= 3) { return 1; } else if(4 <= num && num <= 5) { return 2; } if(dp[num] != 0) { return dp[num]; } dp[num] = solve(num-1) + solve(num-5); return dp[num]; } int main(void) { // freopen("B9461_input.txt", "r", stdin); cin >> N; for(int i = 1; i <= N; i++) { int temp; cin >> temp; cout << solve(temp) << endl; } return 0; } | cs |
'Baekjoon > DP' 카테고리의 다른 글
[백준 11052] 카드 구매하기 (DP) (C/C++) (0) | 2020.01.22 |
---|---|
[백준 2011] 암호코드 (DP) (C/C++) (★) (0) | 2020.01.22 |
[백준 2225] 합분해 (DP) (C/C++) (0) | 2020.01.22 |
[백준 2133] 타일 채우기 (DP) (C/C++) (★★★) (0) | 2020.01.21 |
[백준 1699] 제곱수의 합 (DP) (C/C++) (0) | 2020.01.21 |