Algorithm/BOJ

[BOJ]11762 - 2×n 타일링 (C++)

꾸지새미언니 2022. 1. 5. 15:17

문제

https://www.acmicpc.net/problem/11726

코드

#include <iostream>
#include <bits/stdc++.h>

using namespace std;

int dp[1001];

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

    int n; 
    cin >> n; 
    dp[1]=1; dp[2]=2; 
    for(int i=3; i<n+1; i++){
        dp[i] = (dp[i-1] + dp[i-2])%10007;
    }
    cout << dp[n]; 
}

풀이

앞에 포스팅 했던 DP 문제와 비슷하게 접근하면 된다.
n을 1과 2의 합이 될 수 있는 개수라고 보았고 구하고자 하는 수의 앞 2개의 계산 결과를 더했다.