백준/재귀

BOJ 10870 - 피보나치 수5

누누01 2022. 11. 1. 15:57
728x90

https://www.acmicpc.net/problem/10870

 

10870번: 피보나치 수 5

피보나치 수는 0과 1로 시작한다. 0번째 피보나치 수는 0이고, 1번째 피보나치 수는 1이다. 그 다음 2번째 부터는 바로 앞 두 피보나치 수의 합이 된다. 이를 식으로 써보면 Fn = Fn-1 + Fn-2 (n ≥ 2)가

www.acmicpc.net


 

문제에 제시된 Fn = Fn-1 + Fn-2 (n ≥ 2) 을 활용해 재귀함수를 만들면 되는 문제이다.

또한 재귀를 돌다 0, 1을 만났을 때 특정 값으로 return시켜주는 코드를 추가한다.

 

 

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

public class Main {
    public static void main(String[] args) throws IOException {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        int number = Integer.parseInt(br.readLine());

        System.out.println(fibonacci(number));
        br.close();
    }

    public static int fibonacci(int number) {
        if (number == 0) {
            return 0;
        }
        if (number == 1) {
            return 1;
        }

        return fibonacci(number - 1) + fibonacci(number - 2);
    }
}