문제
풀이 접근
피보나치 수는 0과 1로 시작한다.
그 이후에는 두가지를 더해가면서 커진다.
즉, 조건없이 직접 처리해야하는 부분은 0,1일때이다.
3번째 시도부터는 이전값과 전전값을 더해줘서 리턴시켜주면 될듯하다.
n은 0~20까지의 정수이나 이전과 전전의 정수값을 더하는 구조이기에
그냥 int만 사용하여도 될듯 싶다.
코드
import java.util.Scanner;
public class fibonacci {
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
fibonacci fib=new fibonacci();
int N=fib.fibonacci(sc.nextInt());
System.out.println(N);
}
public int fibonacci(int N){
if(N==0||N==1)
return N;
else
return fibonacci(N-1)+fibonacci(N-2);
}
}
실제 제출때는 Main으로 다 바꿨다.