
[백준] 1로 만들기
다이나믹 프로그래밍(동적 계획법) 메모리 공간을 약간 더 사용하면 연산 속도를 비약적으로 증가시킬 수 있는 방법이 있습니다. 대표적인 방법이 다이나믹 프로그램 기법으로 동적 계획법이라고도 합니다. 대표적인 문제는 피보나치 수 입니다. 6번째 피보나치 수 f(6)을 구하려면 다음과 같이 함수 f를 반복해서 호출해야 할 것입니다. 그런데 f(2)와 f(1)은 항상 1이기 때문에 여기서 호출이 정지되게 됩니다. 또한 그림을 살펴보면 똑같은 호출이 반복적으로 나타납니다. 이러한 반복적인 호출은 불필요하며, 번수가 증가함에 따라 불필요한 호출 횟수는 기하급적으로 증가하게됩니다. 재귀 함수를 사용해서 피보나치 함수 코드를 작성해보겠습니다. def fibo(x): if x == 1 or x == 2: return 1..