백준 13301번 타일 장식물 JAVA

YB·2025년 3월 8일

링크텍스트

설명

피보나치 수열을 활용하는 문제로 DP를 사용하면 쉽게 해결할 수 있다.
초기에 n = 1인 경우 예외 처리를 하지 않아 오류가 발생했다.
시간복잡도: O(N), 공간복잡도: O(N)

코드

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

class Main {
	public static void main (String[] args) throws IOException{
	    BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
	    
	    int n = Integer.parseInt(br.readLine());

		if(n==1){
			System.out.println(4);
			return;
		}
	    
	    long [] dp = new long [n+1];
	    
	    dp[1] = 1;
	    dp[2] = 1;
    
        for(int i=3;i<=n;i++){
            dp[i] = dp[i-1]+dp[i-2];
        }
        
        System.out.println((dp[n]*2)+(dp[n]+dp[n-1])*2);
	    
	}
}

profile
안녕하세요

0개의 댓글