programmers/level3
[프로그래머스] 2 x n 타일링 (Python)
riley_dev
2021. 1. 28. 19:47
프로그래머스 level3
[연습문제] 2 x n 타일링
programmers.co.kr/learn/courses/30/lessons/12900
코딩테스트 연습 - 2 x n 타일링
가로 길이가 2이고 세로의 길이가 1인 직사각형모양의 타일이 있습니다. 이 직사각형 타일을 이용하여 세로의 길이가 2이고 가로의 길이가 n인 바닥을 가득 채우려고 합니다. 타일을 채울 때는
programmers.co.kr
이 문제는 문제를 읽고 그 경우의 수를 어떤 방식으로 고려해야할 지 감이 오지 않아서 검색을 해봤다. 내가 찾은 풀이법은 가로의 길이가 1씩 증가함에 따라 타일을 놓는 방법이 피보나치 수열의 형태로 증가한다는 것을 활용한 풀이법이었다.
Python code
더보기
def solution(n):
tile=[0]*n
tile[0]=1
tile[1]=2
for i in range(2, n):
tile[i]= (tile[i-1]+tile[i-2]) %1000000007
answer = tile[n-1]
return answer