https://www.acmicpc.net/problem/11726
규칙을 찾으면 Num[i] 는
Num[i - 2]의 도형에서 2x1 도형 2개를 뒤에
Num[i - 1]의 도형에서 1x2 도형 1개를 뒤에 붙이면 완성할 수 있다.
그러므로 피보나치 수열을 이용하여 해결할 수 있다.
import java.util.Scanner;
public class Num11726 {
public static int N;
public static int Num[];
public static void main(String[] args) {
//input
Scanner scanner = new Scanner(System.in);
N = Integer.parseInt(scanner.nextLine());
Num = new int[N+2];
//logic
Num[1] = 1;
Num[2] = 2;
for (int i=3; i<=N; i++) {
Num[i] = (Num[i-1] + Num[i-2]) % 10007;
}
//output
System.out.println(Num[N]);
}
}