[Python] 알고리즘/Silver
[2193] 이친수 (Python)
-Becca-
2021. 11. 15. 18:09
[문제]
https://www.acmicpc.net/problem/2193
2193번: 이친수
0과 1로만 이루어진 수를 이진수라 한다. 이러한 이진수 중 특별한 성질을 갖는 것들이 있는데, 이들을 이친수(pinary number)라 한다. 이친수는 다음의 성질을 만족한다. 이친수는 0으로 시작하지 않
www.acmicpc.net
알고리즘 분류는 다이나믹 프로그래밍 입니다.
1자리 이친수 : 1
2자리 이친수 : 10
3자리 이친수 : 100, 101
4자리 이친수 : 1000, 1001, 1010
...
이 과정을 거치면 점화식을 구할 수 있습니다.
[코드]
import sys
li = [1, 1]
for i in range(2, 91):
li.append(li[i - 2] + li[i - 1])
N = int(sys.stdin.readline())
print(li[N - 1])
이 문제의 점화식은 N자리 이친수 = N - 2자리 이친수 + N - 1자리 이친수 입니다.