우리는 유명한 잘 알고있는 피보나치 시퀀스 , 그와 함께 시작 0
하고 1
, 각 요소는 이전 두의 합계입니다. 처음 몇 용어 (OEIS A000045 ) 는 다음과 같습니다 .
0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610, 987, 1597, 2584
양의 정수가 주어지면 다음 규칙에 따라 가장 가까운 피보나치 수를 반환합니다.
가까운 피보나치 수는 소정의 정수와 가장 작은 절대 차와 피보나치 수로서 정의된다. 예를 들면,
34
가장 가까운 피보나치 수있다30
때문에|34 - 30| = 4
, 제 가까운 하나보다 작은,21
용|21 - 30| = 9
.주어진 정수가 피보나치 수열에 속하면 가장 가까운 피보나치 수는 정확히 그 자체입니다. 예를 들어, 가장 가까운 피보나치 수
13
는 정확히13
입니다.동점 인 경우 입력에 가장 가까운 피보나치 수 중 하나를 출력하거나 둘 다 출력하도록 선택할 수 있습니다. 예를 들어, 입력이 인 경우 , 또는
17
모두 유효합니다 . 둘 다 반환하는 경우 형식을 언급하십시오.21
13
21, 13
기본 허점이 적용됩니다. 표준 방법을 통해 입력을 받고 출력 할 수 있습니다 . 프로그램 / 기능은 최대 10 8 값만 처리해야합니다 .
테스트 사례
입력-> 출력 1-> 1 3-> 3 4-> 3 또는 5 또는 3, 5 6-> 5 7-> 8 11-> 13 17-> 13 또는 21 또는 13, 21 63-> 55 101-> 89 377-> 377 467-> 377 500-> 610 1399-> 1597
채점
이것은 code-golf 이므로 모든 언어에서 가장 짧은 바이트 코드가 이깁니다!
n
의미합니다 n ≥ 1
.