https://programmers.co.kr/learn/courses/30/lessons/12900
코딩테스트 연습 - 2 x n 타일링
가로 길이가 2이고 세로의 길이가 1인 직사각형모양의 타일이 있습니다. 이 직사각형 타일을 이용하여 세로의 길이가 2이고 가로의 길이가 n인 바닥을 가득 채우려고 합니다. 타일을 채울 때는 ��
programmers.co.kr
DP
#include <string>
#include <vector>
using namespace std;
const long long MOD = 1000000007;
const int MAX = 60000;
long long D[MAX + 1];
int solution(int n) {
D[0] = 1;
D[1] = 1;
// 점화식 : D[n] = D[n - 1] + D[n - 2
for (int i = 2; i <= n; ++i)
{
D[i] = (D[i - 1] + D[i - 2]) % MOD;
}
return D[n];
}
BOJ 11726번 문제와 동일하다
점화식을 잘 세워서 DP로 풀면 된다.
'Algorithm > 프로그래머스' 카테고리의 다른 글
[프로그래머스]2018 KAKAO BLIND RECRUITMENT[1차] : 추석 트래픽 (level 3)(c++, java) (0) | 2020.06.23 |
---|---|
[프로그래머스] Summer/Winter Coding(2019) : 종이접기 (level 3) (c++) (0) | 2020.06.22 |
[프로그래머스]그래프 : 가장 먼 노드 (level 3)(c++) (0) | 2020.06.22 |
[프로그래머스]그래프 : 순위 (level 3)(c++) (0) | 2020.06.22 |
[프로그래머스]깊이/너비 우선 탐색(DFS/BFS) : 여행경로 (level 3) (c++) (0) | 2020.06.21 |
댓글