You will be fine

<Algorithm> 191. 피보나치(BJO)

by BFine
반응형

1. 1003번 피보나치

   사용 알고리즘 :  DP

  • 포스팅 안해도 되는 문제라 생각했는데 가끔 피보나치 구현하는게 헷갈릴때가 있어서 메모해둘겸 올리면 좋겠다는 생각이 들었다.

  • Lambda로 피보나치 구현하는 방법은 2019/04/01 - [공부/Lambda] - 5. JAVA8 in Action - Chapter 5 이글 맨 아래에 있다.

내 코드 


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
import java.util.Scanner;
 
public class Main {
    static int[][] dp;
    public static void main(String[] args){
        Scanner sc = new Scanner(System.in);
        /************************
         * DP를 이용해 점화식을 세워서
         * 개수를 구한다.
         * dp[n] = dp[n-1]+dp[n-2]
         ************************/
        dp = new int[41][41];
        dp[0][0= 1;
        dp[1][1= 1;
        for(int i = 2; i < 41; i++) {
            dp[i][0= dp[i-2][0+ dp[i-1][0];
            dp[i][1= dp[i-2][1+ dp[i-1][1];
        }
        int n = sc.nextInt();
        for(int i = 0; i <n; i++) {
            int t = sc.nextInt();
            System.out.println(dp[t][0]+" "+dp[t][1]);
        }
        
    }
     
     public int fibonacci(int n) {
        if (n == 0) {
            return 0;
        } else if (n == 1) {
            return 1;
        } else {
            return fibonacci(n-2)+fibonacci(n-1);
        }
    }
}
 
cs


반응형

블로그의 정보

57개월 BackEnd

BFine

활동하기