[백준] 11726: 2 * n 타일링 - Java (DP)
Algorithm/BackJun 2024. 1. 7.
반응형
목 차
- 문제
- 접근 방식
- 풀이
문제
접근 방식
해당 문제는 피보나치 수열 DP 문제와 비슷하다.
모든 DP 문제가 그렇듯 n = 1일 때, 2일 때, 3일 때 ... ... 를 구해보면 패턴이 보인다.
그리고 그 패턴에서 나는 다음과 같은 점화식을 세웠다.
dp[i] = dp[i - 2] + dp[i - 1]
풀이
package src.dp;
import java.io.BufferedReader;
import java.io.InputStreamReader;
public class Tiling {
public static void main(String[] args) throws Exception {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
int n = Integer.parseInt(br.readLine());
int[] dp = new int[1001];
dp[1] = 1;
dp[2] = 2;
// 점화식
for(int i = 3; i <= n; i++){
dp[i] = (dp[i - 2] + dp[i - 1]) % 10007;
}
System.out.println(dp[n]);
}
}
반응형
'Algorithm > BackJun' 카테고리의 다른 글
[백준] 2178: 미로 탐색 - Java (그래프 이론) (0) | 2024.01.11 |
---|---|
[백준] 1932: 정수 삼각형 - Java (DP) (0) | 2024.01.11 |
[백준] 2775: 부녀회장이 될테야 - Java (DP) (0) | 2024.01.07 |
[백준] 2839: 설탕 배달 - Java (DP) (0) | 2024.01.07 |
[백준] 10844: 쉬운 계단 수 - Java (DP) (0) | 2024.01.07 |