Matrix chain multiplication - DP
DP
- 2가지 조건 만족
- Optimal Substructure
- Optimal Overlapping Subproblems
기본 개념
- 행렬 곱을 최소로 만드는 알고리즘
- pXq, qXr 행렬
- 총 연산 횟수: pxqxr
- brute force
- P(n): n개의 행렬을 괄호로 묶는 서로 다른 방법의 수
- ex) P(4) = p(1)p(3) + p(2)p(2) + p(3)p(1)
알고리즘
-
m[i,j]: Ai ~ Aj의 최소 행렬 곱
-
코드
실제 출력 코드(괄호 포함 최종 결과)