알고리즘 및 자료구조/문제
백준알고리즘 11726번 2 * N 타일링
ktko
2018. 4. 24. 23:57
백준 알고리즘
https://www.acmicpc.net/problem/11726
기저식을 잘 세워야한다. 그리고 그림을 잘그려서 패턴 파악을 했었어야했다.
나는 그림을 잘못그려서 규칙을 찾는데 오래걸렸다.
1 2 3 5 8 13 21 순으로 타일의 개수를 찾아낼 수 있었다.
식을 세우면 D[i] = D[i-1] + D[i-2] 임을 알 수있다.
import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner scan = new Scanner(System.in); int count = Integer.parseInt(scan.nextLine().trim()); long[] memoArray = new long[1001]; memoArray[0] = 0; memoArray[1] = 1; memoArray[2] = 2; if(count <= 2) { System.out.println(memoArray[count]); return ; } for(int i = 3; i <= count; i++) { memoArray[i] = (memoArray[i-1] + memoArray[i-2]) % 10007; } System.out.println(memoArray[count]); } }