10. 동적 프로그래밍(DYNAMIC PROGRAMMING) 커다란 문제를 여러 단계로 나누어 해결하는 알고리즘들이 있어요. 그 중에 동적 프로그래밍(Dynamic Programming)은 문제를 해결하면서 얻은 체험 정보를 이용하여 문제를 해결하는 알고리즘이예요. 동적 프로그래밍을 이용하면 한 번 해결했던 문제를 다시 해결하지 않을 수 있기 때문에 문제 해결 비용을 줄일 수 있어요. 그리고 여러 단계를 거쳐 문제를 해결하는 복잡한 문제에서 이미 수행한 정보에서 다음 단계를 해결하기 때문에 똑같은 경험을 하지 않고 모든 경우의 경험을 할 수 있어요. 물론 여러 단계로 문제를 해결해야 하는 복잡한 문제에서 모든 경우를 경험하는 것은 컴퓨터로 계산하더라도 지구가 소멸할 시기까지 계산하지 못하는 문제들도 있어..