본문 바로가기
백준(Java)/23년 7월

[Java] 백준 - 1003번: 피보나치 함수

by C0MPAS 2023. 7. 10.

7월 10일(월) - 다이나믹 프로그래밍 (1003번)

 

1003번: 피보나치 함수

각 테스트 케이스마다 0이 출력되는 횟수와 1이 출력되는 횟수를 공백으로 구분해서 출력한다.

www.acmicpc.net

ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ

 

문제점

x

ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ

 

풀이

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

public class Main {
    static Integer[][] fibo = new Integer[41][2];
    public static void main(String[] args) throws IOException{
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        StringBuilder sb = new StringBuilder();

        int T = Integer.parseInt(br.readLine());
        for(int i=0; i<T; i++)
        {
            int N = Integer.parseInt(br.readLine());
            fibonacci(N);
            sb.append(fibo[N][0] + " " + fibo[N][1]).append('\n');
        }

        System.out.println(sb);
    }

    static Integer[] fibonacci(int N){

        if(N==0)
        {
            fibo[N][0] = 1;
            fibo[N][1] = 0;
        }
        else
        {
            fibo[0][0] = 1;
            fibo[0][1] = 0;
            fibo[1][0] = 0;
            fibo[1][1] = 1;

            for(int i=2; i<N+1; i++)
            {
                fibo[i][0] = fibo[i-2][0] + fibo[i-1][0];
                fibo[i][1] = fibo[i-2][1] + fibo[i-1][1];
             }
        }

        return fibo[N];
    }
}

ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ

'백준(Java) > 23년 7월' 카테고리의 다른 글

[Java] 백준 - 2217번: 로프  (0) 2023.07.12
[Java] 백준 - 10845번: 큐  (0) 2023.07.11
[Java] 백준 - 7576번: 토마토  (0) 2023.07.07
[Java] 백준 - 11758번: CCW  (0) 2023.07.06
[Java] 백준 - 1026번: 보물  (0) 2023.07.05

댓글