동적 계획법 (Dynamic Programming) 한 번 계산한 문제는 다시 계산하지 않게 하는 방식으로, 같은 계산을 여러 번 하는 상황을 개선하여 효율을 높이는 알고리즘이다. 이 때, 한 번 계산한 문제의 답을 저장해두는 메모이제이션(Memoization) 기법이 사용된다. Top-Down 방식은 재귀, Bottom-Up방식은 반복문을 사용한다. 동적 계획법 사용 조건 동일한 작은 문제들이 반복하여 나타나야 한다. 동일한 문제는 항상 답이 동일해야 한다. 동적계획법을 이용하는 백준 문제 (피보나치 함수) 1003번: 피보나치 함수 각 테스트 케이스마다 0이 출력되는 횟수와 1이 출력되는 횟수를 공백으로 구분해서 출력한다. www.acmicpc.net import java.io.BufferedRead..