알고리즘/백준

11726_2×n 타일링

베리영young 2025. 1. 21. 17:44

사용 알고리즘: DP

사용 언어: java

 

package week33;

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

public class Main {

	public static void main(String[] args) throws IOException {
		Scanner sc = new Scanner(System.in);
		int n = sc.nextInt();
		
		int[][] dp = new int[n+1][3];
		dp[1][1] = 1;
		dp[1][2] = 0;
		if(n == 1) {
			System.out.println(1);
			return;
		}
		dp[2][1] = 1;
		dp[2][2] = 1;
//		dp[3][1] = 1+1; //dp[i-1][1] + dp[i-1][2]
//		dp[3][2] = 1; //dp[i-2][1] + dp[i-2][2]
		
		for(int i=3; i<n+1; i++) {
			dp[i][1] = (dp[i-1][1] + dp[i-1][2]) % 10007;
			dp[i][2] = (dp[i-2][1] + dp[i-2][2]) % 10007;
		}
		
		System.out.println((dp[n][1] + dp[n][2]) % 10007);
	}

}

 

 

그으으 이렇게 이차원으로 풀지 않으면 내 머리론 이해가 잘 안 된다.

풀었음 됐지 머

'알고리즘 > 백준' 카테고리의 다른 글

2295_세 수의 합  (0) 2025.02.02
11404_플로이드 **  (0) 2025.01.22
1764_듣보잡  (1) 2025.01.20
1620_나는야 포켓몬 마스터 이다솜  (1) 2025.01.20
1931_회의실 배정  (0) 2025.01.18