728x90
반응형
SMALL
백준 저지에서 피보나치 수를 자바를 통해 풀어 보았다.
https://www.acmicpc.net/problem/2747
2747번 피보나치 수
문제
피보나치 수는 0과 1로 시작한다. 0번째 피보나치 수는 0이고, 1번째 피보나치 수는 1이다. 그 다음 2번째 부터는 바로 앞 두 피보나치 수의 합이 된다.
이를 식으로 써보면 Fn = Fn-1 + Fn-2 (n ≥ 2)가 된다.
n=17일때 까지 피보나치 수를 써보면 다음과 같다.
0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610, 987, 1597
n이 주어졌을 때, n번째 피보나치 수를 구하는 프로그램을 작성하시오.
설명
n의 최대 범위가 45이므로 45번 째 피보나치 수까지 계산하여 구하고 배열에 저장했다.
저장한 값을 출력한다.
코드
//2747번 피보나치 수.java
package week2;
import java.util.Scanner;
public class 피보나치_수_2747 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int[] fibo = new int[46]; //주어진 범위 안의 모든 피보나치를 구함
fibo[0]=0;
fibo[1]=1;
for(int i=2;i<fibo.length;i++) {
fibo[i] = fibo[i-1]+fibo[i-2];
}
int n = sc.nextInt();
System.out.println(fibo[n]);
}
}
728x90
반응형
SMALL
'Problem Solving > 백준BOJ' 카테고리의 다른 글
[백준BOJ] 2960번 에라토스테네스의 체.java (0) | 2021.07.25 |
---|---|
[백준BOJ] 2748번 피보나치 수 2.java (0) | 2021.07.25 |
[백준BOJ] 2407번 조합.py (0) | 2021.07.22 |
[백준BOJ] 1043번 거짓말.py (0) | 2021.07.21 |
[백준BOJ] 16236번 아기 상어.py (0) | 2021.07.20 |