만드는 중입니다

아직 만드는 중이라 바뀔 수 있습니다

피보나치 수 4

면접 대비

시간 제한1초메모리 제한256 MB

요약
10000 이하의 n이 주어지면 임의 정밀도 연산으로 n번째 피보나치 수를 구합니다.
난이도

쉬움10점 중 3점

유형
동적 계획법, 구현
정답자
아직 제출이 없습니다

문제

피보나치 수는 0과 1로 시작한다. 0번째 피보나치 수는 0이고 1번째 피보나치 수는 1이며, 2번째부터는 바로 앞의 두 피보나치 수를 더한 값이다. 식으로 쓰면 Fn=Fn−1+Fn−2F_n = F_{n-1} + F_{n-2} (n≥2n \ge 2)이다.

n이 17일 때까지 피보나치 수를 차례로 쓰면 다음과 같다.

0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610, 987, 1597

n이 주어졌을 때, n번째 피보나치 수를 구하는 프로그램을 작성하시오.

입력

첫째 줄에 n이 주어진다. n은 10,000보다 작거나 같은 자연수 또는 0이다.

출력

첫째 줄에 n번째 피보나치 수를 출력한다. 값이 64비트 정수에 담기지 않을 만큼 커지므로 임의 정밀도 정수로 계산한다.

예제6

  1. 예제 1

    입력
    10
    
    예상 출력
    55
    
  2. 예제 2

    입력
    0
    
    예상 출력
    0
    
  3. 예제 3

    입력
    1
    
    예상 출력
    1
    
  4. 예제 4

    입력
    2
    
    예상 출력
    1
    
  5. 예제 5

    입력
    3
    
    예상 출력
    2
    
  6. 예제 6

    입력
    17
    
    예상 출력
    1597