웹찢남

[백준 11727 2xn 타일링 2 문제] PYTHON 본문

백준 Algorithm

[백준 11727 2xn 타일링 2 문제] PYTHON

harry595 2021. 4. 15. 19:36

 

2xn 타일링 문제와 같다고 보면 된다.

다른 점은 전의 경우 2x2 타일이 없었다.

따라서 기존의 코드인 [i]=[i-1]+[i-2] 로 풀면 안된다.

[i-2]의 경우 눕혀진 직사각형 2개에 2x2 타일의 경우도 추가되어

[i]=[i-1]+[i-2]*2로 풀면 된다.

 

def sol(n):
    tmp_arr=[0,1,3]
    for i in range(3,n+1):
        tmp_arr.append(tmp_arr[i-2]*2+tmp_arr[i-1])
    print(tmp_arr[n]%10007)
if __name__ == "__main__":
    t=int(input())
    if(t==1):
        print(1)
    elif(t==2):
        print(3)
    else:
        sol(t)
Comments