본문 바로가기

백준 문제풀기/JAVA

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

 

피보나치수는

수열을 배울때 꼭 같이 배우는 내용입니다

 

n번째 피보나치 수를 구하시오

 

반복을 해야한다는게 느껴지시죠?

 

코드입니다

 

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

public class Main {

    public static void main(String[] args) throws IOException {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        StringTokenizer st = new StringTokenizer(br.readLine());
        int n = Integer.parseInt(st.nextToken());
        
        System.out.print(pbnc(n));
    }
    
    static long pbnc(int n) {
    	if (n==0) {
    		return 0;
    	}else if(n==1) {
    		return 1;
    	}    	
    	return pbnc(n-1)+pbnc(n-2);
    }
}

그냥 스캐너 써도 되는데

이때는 버퍼리더와 스트링토크나이저 연습을 한다고 복잡하게 써놨네요

 

피보나치 함수를 재귀형식을 이용해

for를 안쓰고도

반복하여 계산해줬습니다