동적계획법에 대한 블로그를 보고 난 후 난이도가 쉬운 문제를 자세히 보니까
푸는법이 생각이나서 기쁘게 문제를 풀었다!
푸는법이 생각이나서 기쁘게 문제를 풀었다!
package backjoon;
/*문제
2×n 크기의 직사각형을 1×2, 2×1 타일로 채우는 방법의 수를 구하는 프로그램을 작성하시오.
입력
첫째 줄에 n이 주어진다. (1 ≤ n ≤ 1,000)
출력
첫째 줄에 2×n 크기의 직사각형을 채우는 방법의 수를 10,007로 나눈 나머지를 출력한다.*/
import java.io.BufferedReader;
import java.io.InputStreamReader;
public class back11726 {
public static void main(String[] args) throws Exception{
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
int n = Integer.parseInt(br.readLine());
int tile[] = new int[1001];
tile[1] = 1;
tile[2] = 2;
for(int i=3; i<=n; i++){
tile[i] = (tile[i-1] + tile[i-2]) % 10007;
}
System.out.println(tile[n]);
}
}
댓글
댓글 쓰기