https://www.acmicpc.net/problem/10870
접근 :
- 피보나치 수를 재귀 함수로 구현
- n = 0 일 때, 결과 값은 0
- n = 1 일 때, 결과 값은 1
- n ≥ 2 일 때, Fn = Fn-1 + Fn-2
코드 구현:
import java.io.*;
public class Main {
public static int fibonacci(int n) {
// 0 이하가 들어오면 0 반환(예외처리)
if (n <= 0) return 0;
// n이 1되면 연산결과를 반환하기 시작함
else if (n == 1) return 1;
// n이 1 보다 크면 재귀 호출
return fibonacci(n - 1) + fibonacci(n - 2);
}
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
int n = Integer.parseInt(br.readLine());
// 결과 화면출력
System.out.println(fibonacci(n));
br.close();
}
}
'JAVA > Coding Test' 카테고리의 다른 글
[JAVA] 백준 14425 문자열 집합 (0) | 2023.03.02 |
---|---|
[JAVA] 백준 10815 숫자카드_집합과맵 (0) | 2023.03.01 |
[JAVA] 백준 10872 팩토리얼_재귀함수 (0) | 2023.02.28 |
[JAVA] 백준 2798 블랙잭_브루트포스 (0) | 2023.02.28 |
[JAVA] 백준 2231 분해합_브루트포스 (0) | 2023.02.28 |