[Boj] 2*N 타일링2 11727(python)
문제링크 : https://www.acmicpc.net/problem/11727
수열의 항인 N이 주어지며 필자는 문제의 첫 번째 항을 0번째 항으로 설정했다.
초기에는 [1, 3]으로 설정했다.
예를 들어 N = 3인 경우는 2*2 + 2*1 혹은 2*1 + 2*2 타일로 만들어야 하기에
N이 2보다 클 경우에는 numbers[i-1] + 2*numbers[i-2]
이다
for문을 통해서 항을 만들어주고, N-1 항을 출력했다.
간단한 다이나믹 프로그래밍 문제
N = int(input())
numbers = [1, 3]
for i in range(2, N+1):
numbers.append(numbers[i-1]+2*numbers[i-2])
print(numbers[N-1] % 10007)
댓글남기기