백준

백준 2748 피보나치 수 2(Java)

Park DJ 2023. 1. 14. 13:05

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

 

2748번: 피보나치 수 2

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

www.acmicpc.net


 

해석 및 팁

 


 

이 문제는 피보나치수열의 공식만 알면 쉽게 풀수있다. 초기값인 0과 1이 주어지면 그다음부터는 앞 두수의 합이 되므로 반복문을 통해 구할수 있다. int를 사용하면 범위에서 벗어나므로 long을 사용해주어야 한다.

 


 

Java 코드

 


import java.util.Scanner;

public class Main {
  public static void main(String[] args) {
    Scanner sc = new Scanner(System.in);

    int n = sc.nextInt();
    long[] f = new long[n+1];
    f[0] = 0;
    f[1] = 1;
    for(int i = 2; i < n+1; i++) f[i] = f[i-1] + f[i-2];     //피보나치수열의 공식
    
    System.out.println(f[n]);
  }
}