1. 일반항으로 구하기
오일러가 발견한 수식입니다. 이를 코드로 옮길 시 아래와 같이 됩니다.
r=5**(0.5)
print(round(((1+r)/2)**int(input())/r))
|
cs |
증명은 위키피디아를 참조 바랍니다.
https://en.wikipedia.org/wiki/Fibonacci_number
2. '1 / 998999'로 구하기
1 / 998999 = 0.000001001002003005008013021034055...로 피보나치 수열을 나타냅니다.
from decimal import Decimal
s = str(Decimal(1) / 998999)
for i in range(2, len(s) - 2, 3):
print(int(s[i] + s[i + 1] + s[i + 2])) |
cs |
이 성질을 이용하여 코드로 나타내 보았습니다.
결과:
0
1
1
2
3
5
8
13
21
34
55
'그 밖의 방법들' 카테고리의 다른 글
백준 10814 나이순 정렬, 안정 정렬 (0) | 2022.06.02 |
---|---|
[nodeJS] 백준 17433: 신비로운 수 (0) | 2022.05.27 |
SQL/MySQL의 기초 - WHERE, SubQuery (0) | 2022.05.25 |
빠른 입출력 [node JS] 백준 15552번 - 빠른 A+B, 최대한 다양하게 (0) | 2022.05.25 |
빠른 입출력 [C#] 백준 15552번 - 빠른 A+B, 최대한 다양하게 (0) | 2022.05.25 |