Notice
Recent Posts
Recent Comments
Link
«   2025/05   »
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31
Archives
Today
Total
관리 메뉴

MG

[백준] 11726 - 2 x n 타일링 본문

컴퓨터과학/알고리즘_PS

[백준] 11726 - 2 x n 타일링

MG# 2022. 4. 25. 12:15

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

 

11726번: 2×n 타일링

2×n 크기의 직사각형을 1×2, 2×1 타일로 채우는 방법의 수를 구하는 프로그램을 작성하시오. 아래 그림은 2×5 크기의 직사각형을 채운 한 가지 방법의 예이다.

www.acmicpc.net

 

처음에 머리로만 풀려다 확률론까지 생각했다 난이도 보고 DP 문제일거라 직감했습니다. 그리고 아래와 같이 그리면서 규칙을 찾았고 해결했습니다. DP 문제는 직접 세거나 그림으로 도식화하기 전에는 DP 인지 판별이 어려워 많은 연습이 필요할 것 같습니다.

 

 

#include <iostream>
#define MAX 1001
using namespace std;

int dp[MAX];
int n;

int main() {

    ios::sync_with_stdio(0);
    cin.tie(0);

    cin >> n;
    dp[1] = 1;
    dp[2] = 2;

    for (int i = 3; i <= n; i++)
        dp[i] = (dp[i - 1] + dp[i - 2]) % 10007;

    cout << dp[n] << "\n";
    return 0;
}

'컴퓨터과학 > 알고리즘_PS' 카테고리의 다른 글

[백준] 1092 - 배  (0) 2022.04.28
[백준] 17626 - Four Squares  (0) 2022.04.27
[백준] 16953 - A → B  (0) 2022.04.26
[백준] 20365 - 블로그2  (0) 2022.04.25
알고리즘 PS  (0) 2022.04.24