Notice
Recent Posts
Recent Comments
Link
«   2024/10   »
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
Archives
Today
Total
관리 메뉴

코딩블로그

백준 실버 3 - 이친수 JAVA 본문

카테고리 없음

백준 실버 3 - 이친수 JAVA

_hanbxx_ 2024. 3. 20. 12:59
728x90

 

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

 

문제 자체는 잘 풀었는데 계속 틀렸다길래 질문 게시판을 보니 int말고 long으로 해야한다고 배웠다

그 이유에 대해서 지금은 완전히 이해를 못했지만, 해당 답변이 가장 잘 설명이 되어 있어 가져왔다

앞으로 문제 풀 때 이 범위 문제도 항상 고려하면서 풀어야겠다고 생각했다

 

 

import java.util.*;
import java.lang.*;
import java.io.*;

// The main method must be in a class named "Main".
class Main {
    public static void main(String[] args) throws IOException {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        int N = Integer.parseInt(br.readLine());        
        long[] dp = new long[N + 1];
        
        dp[1] = 1;
        
        if (N == 1){
            System.out.println(dp[N]);
        } else if (N == 2) {
            dp[2] = 1;
            System.out.println(dp[N]);
        } else {
            dp[2] = 1;
            for (int i = 3; i <= N; i++) {
                dp[i] = dp[i-1] + dp[i-2];
            }
            System.out.println(dp[N]);
        } 
 

    }
}
728x90