문제
3×N 크기의 벽을 2×1, 1×2 크기의 타일로 채우는 경우의 수를 구해보자.
입력
첫째 줄에 N(1 ≤ N ≤ 30)이 주어진다.
출력
첫째 줄에 경우의 수를 출력한다.
import java.util.Arrays;
import java.util.Scanner;
public class baekojoon2133 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int n = sc.nextInt();
int[] info = new int[31];
info[0] = 1;
info[2] = 3;
for (int i = 4; i <= 30; i += 2) {
info[i] = info[i - 2] * 3;
for (int j = i - 4; j >= 0; j -= 2) {
info[i] += info[j] * 2;
}
}
System.out.println(info[n]);
}
}
'알고리즘 > 초급1' 카테고리의 다른 글
[JAVA] 백준 1476번: 날짜 계산 ( 초급2-3 ) (0) | 2021.09.20 |
---|---|
[JAVA] 백준 17404번: RGB거리 2 (초급 1-34) - hard (0) | 2021.09.17 |
[JAVA ] 백준 13398번: 연속합 2 ( 기초 1-32 ) (0) | 2021.09.16 |
[JAVA] 백준 11054번: 가장 긴 바이토닉 부분 수열 ( 초급 1-31 ) (0) | 2021.09.16 |
[JAVA] 백준 11722번: 가장 긴 감소하는 부분 수열 ( 초급 1 - 30 ) (0) | 2021.09.07 |