HyeLog

9095_1, 2, 3 더하기 본문

알고리즘

9095_1, 2, 3 더하기

shj718 2023. 1. 5. 10:41

합이 1로 끝나는 경우, 2로 끝나는 경우, 3으로 끝나는 경우로 나눌 수 있음을 이용해서 dp로 풀이했다.

#include <iostream>
#define MAX 11

using namespace std;

int d[MAX];

int main() {
    ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0);

    int t, n;
    cin >> t;
    while (t--) {
        cin >> n;
        d[1] = 1;
        d[2] = 2;
        d[3] = 4;
        for (int i = 4; i <= n; i++) {
            d[i] = d[i - 1] + d[i - 2] + d[i - 3];
        }
        cout << d[n] << '\n';
    }

    return 0;
}

'알고리즘' 카테고리의 다른 글

C++ 1차원, 2차원 배열 초기화 방법 (fill)  (2) 2023.01.31
6064_카잉 달력  (0) 2023.01.05
1748_수 이어 쓰기 1  (0) 2023.01.05
14500_테트로미노  (2) 2023.01.04
1107_리모컨  (0) 2023.01.04