백준 10870 피보나치 수 5 [JAVA]

Ga0·2023년 7월 30일
0

baekjoon

목록 보기
82/137
post-custom-banner

문제 해석

  • 제목이 문제인데, 우리가 아는 피보나치 수를 구하면 된다.
  • 첫번째 줄에 n을 입력받고 n의 피보나치 수를 구하면 된다.
  • 피보나치를 구하는 방법은 아래와 같다.
  • 만약 n이 6이라고 하면 0, 1, 1, 2, 3, 5, 8(즉, Fn = fn-1 + fn-2)을 해서 구하면된다. (단, 재귀에 속하는 문제이기 때문에 재귀를 사용해야한다.)
  • 그림으로 설명하면 아래와 같다. (fibonacciNumber(0)은 0이고, fibonacciNumber(1)은 1이다.)

코드

import java.io.*;

public class Main {

    public static void main(String[] args) throws IOException {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));

       int N = Integer.parseInt(br.readLine());

        br.close();
        System.out.println(fibonacciNumbers(N));
    }


    static int fibonacciNumbers(int n){
        if(n == 0) return 0; //0일때 0
        if(n == 1) return 1; //1일때 1

        return fibonacciNumbers(n-1) + fibonacciNumbers(n-2);
    }
}

결과

느낀 점

  • 피보나치 수를 좀 오랜만에 본 느낌이라 처음에 '뭐였더라...?' 흠칫했지만 거의 바로 생각나서 크게 어려움없이 푼 문제였다.
post-custom-banner

0개의 댓글