우리는 유명한 잘 알고있는 피보나치 시퀀스 , 그와 함께 시작 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모두 유효합니다 . 둘 다 반환하는 경우 형식을 언급하십시오.211321, 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.