백준
백준 1003 피보나치 함수(Java)
Park DJ
2023. 1. 30. 17:43
https://www.acmicpc.net/problem/1003
1003번: 피보나치 함수
각 테스트 케이스마다 0이 출력되는 횟수와 1이 출력되는 횟수를 공백으로 구분해서 출력한다.
www.acmicpc.net
해석 및 팁
이 문제는 이중배열을 통해 0과 1의 호출 횟수를 구해주면 됩니다. n의 범위가 40까지이므로 배열에 값을 넣은 후 n이 주어지면 호출하면 됩니다.
Java 코드
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
StringBuilder sb = new StringBuilder();
int t = sc.nextInt();
int[][] arr = new int[2][41];
arr[0][0] = 1;
arr[0][1] = 0;
arr[1][0] = 0;
arr[1][1] = 1;
for(int i = 2; i <= 40; i++) {
arr[0][i] = arr[0][i-1] + arr[0][i-2];
arr[1][i] = arr[1][i-1] + arr[1][i-2];
}
for(int i = 0; i < t; i++) {
int n = sc.nextInt();
sb.append(arr[0][n]+" "+arr[1][n]).append("\n");
}
System.out.println(sb);
}
}