도전
양의 정수 n
를 입력으로 사용하고 n
하위 Fib #을 포함하는 Fibonacci 번호 (전체 Fib #로 단축)를 출력 하는 프로그램을 작성해야합니다 n
. 이 도전의 목적을 위해 피보나치 수열은로 시작합니다 1
.
다음은 테스트 케이스 또는 챌린지를 명확히하기위한 예제로 사용할 수있는 몇 가지 예입니다 (후자는 명확하지 않은 것을 설명하는 아래에 주석을 남겨주세요).
n=1
Fib#s: 1
^1 1st Fib# that contains a 1 (1st Fib#)
Output: 1
n=2
Fib#s: 1, 1
^1 ^2 2nd Fib# that contains a 1 (2nd Fib#)
Output: 1
n=3
Fib#s: 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233
^1 ^2 ^3 3rd Fib# that contains a 2 (3rd Fib#)
Output: 233
n=4
Output: 233
n=5
Output: 6765
n=6
Output: 28657
n=7
Output: 1304969544928657
n=8
Output: 14472334024676221
n=9
Output: 23416728348467685
n=10
Fib#s: 1, ..., 34, 55, 89, ..., 63245986, 102334155, 165580141, ..., 2880067194370816120, 4660046610375530309
^1 ^2 ^3 ^10 10th Fib# that contains a 55 (10th Fib#)
Output: 4660046610375530309
항상 그렇듯이 이것은 code-golf 이므로 가능한 가장 적은 바이트 수로 이동하십시오.
혼란 스럽거나 불분명 한 내용이 있으면 의견을 남겨주십시오.
(이 문제는 내가 게시 된 또 다른 도전 기반으로한다 : N 포함하는 n 번째 주요 인쇄 )
n=25
(출력 1186 자리)에서 작동 한 다음 n=26
(내 랩톱에서 컴파일 된 3085 자리) 사망합니다 . fib(n)
하나 이상의 숫자를 얻을 때마다 어려움이있는 것처럼 보입니다 (예상 한대로). 다음 점프 인 31은 최종 출력에서 12990 자리를가집니다.
n=5
테스트 케이스를 포함시키는 것이 좋습니다 . 왜냐하면 하위 문자열이 여러 번있는 경우 수를 세는 수표를 작성하는 바보 같은 오류가 발생했기 때문입니다.n=5
때문에 그것을 잡을 것입니다55
.