문제
리뷰
2xn 타일링 문제를 풀고 연이어 풀었다.
n이 1, 2, 3, 4 일 때 어떤 경우가 나오는지 그림을 그려보니까 규칙성을 발견할 수 있었다.
계속 숫자를 더하다보면 자료형의 크기를 넘을 수 있다는 힌트를 유념하면서 배열에 숫자를 저장하기 전에 mod 연산을 해줬다.
코드
#include <stdio.h>
using namespace std;
// 2xn 타일링2 (백준 11727)
int arr[1001];
int main(void){
int i = 0, n = 0;
scanf("%d", &n);
arr[1] = 1;
arr[2] = 3;
arr[3] = 5;
for(i = 4; i <= n; i++){
arr[i] = (arr[i-2] * 2 + arr[i-1]) % 10007;
}
printf("%d", arr[n]);
return 0;
}
728x90
'알고리즘 > 백준' 카테고리의 다른 글
쉬운 계단 수 백준 10844 (0) | 2020.08.14 |
---|---|
카드 구매하기 백준 11052 (0) | 2020.08.13 |
2xn 타일링 백준 11726번 (0) | 2020.08.12 |
분산처리 백준 1009번 c++ (0) | 2020.08.12 |
스택 백준 10828번 (0) | 2020.08.12 |