DP 알고리즘

DP 알고리즘이란 Dynamic Programming이다
이전의 값을 재활용하는 알고리즘
ex)1~10 숫자 중 각각 이전 값을을 합한 값 구하기
이전의 값을 황용해서 시간복잡도를 줄일 수 있음

예시문제 백준 타일링

문제: 2xn 크기의 직사각형을 1x2 2x1 타일로 채우는 방법의 수를 구하는 프로그램을 작성하기오

아래 그림은 2x5 그기의 직사각형을 채운 한가지 방법의 예이다.

DP 에서 중요한 것은 점화식이 가장 중요하다.

An =An-1 + An-2
이게 점화식이기 때문에
for문으로 3번부터 n번까지 돌면서

for(int i = 3;i<n-1;i++ ){
	result[i] = result[i-1] + result[i-2];
}

좋은 웹페이지 즐겨찾기