문제에 나와있는 식을 참조하거나 피보나치 수열에 대해 알고 있다면 쉽게 풀 수 있는 문제일 것이다.
package recursion;
import java.util.*;
public class fibonacci {
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner in = new Scanner(System.in);
int n = in.nextInt();
int ans = fibo(n);
System.out.println(ans);
}
public static int fibo(int N) {
if(N >= 2) {
return fibo(N-1) + fibo(N-2);
}
else if(N == 0)
return 0;
else
return 1;
}
}
- 우선 피보나치 수열에 대해 알고 있었고, 문제에 답이 있는 경우 이므로 재귀함수를 알고 문제의 조건들만 앎맞게 구현한다면 굉장히 쉽게 풀 수 있는 기본 문제였다.