| 1 | Initialize DP table with zeros | - | - | - | - | - | [[0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0]] | Empty DP table for 4 matrices |
| 2 | Set chain length = 2 | 2 | - | - | - | - | [[0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0]] | Start filling for pairs |
| 3 | Calculate cost for i=0, j=1, k=0 | 2 | 0 | 1 | 0 | 10*20*30=6000 | [[0, 6000, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0]] | Cost for multiplying A0 and A1 |
| 4 | Calculate cost for i=1, j=2, k=1 | 2 | 1 | 2 | 1 | 20*30*40=24000 | [[0, 6000, 0, 0], [0, 0, 24000, 0], [0, 0, 0, 0], [0, 0, 0, 0]] | Cost for multiplying A1 and A2 |
| 5 | Set chain length = 3 | 3 | - | - | - | - | [[0, 6000, 0, 0], [0, 0, 24000, 0], [0, 0, 0, 0], [0, 0, 0, 0]] | Start filling for triplets |
| 6 | Calculate cost for i=0, j=2, k=0 | 3 | 0 | 2 | 0 | m[0][0]+m[1][2]+10*20*40=0+24000+8000=32000 | [[0, 6000, 32000, 0], [0, 0, 24000, 0], [0, 0, 0, 0], [0, 0, 0, 0]] | Split at k=0 |
| 7 | Calculate cost for i=0, j=2, k=1 | 3 | 0 | 2 | 1 | m[0][1]+m[2][2]+10*30*40=6000+0+12000=18000 | [[0, 6000, 18000, 0], [0, 0, 24000, 0], [0, 0, 0, 0], [0, 0, 0, 0]] | Split at k=1, choose min cost |
| 8 | Set chain length = 4 | 4 | - | - | - | - | [[0, 6000, 18000, 0], [0, 0, 24000, 0], [0, 0, 0, 0], [0, 0, 0, 0]] | Start filling for quadruplets |
| 9 | Calculate cost for i=1, j=3, k=1 | 4 | 1 | 3 | 1 | m[1][1]+m[2][3]+20*30*50=0+60000+30000=90000 | [[0, 6000, 18000, 0], [0, 0, 24000, 90000], [0, 0, 0, 60000], [0, 0, 0, 0]] | Split at k=1 |
| 10 | Calculate cost for i=1, j=3, k=2 | 4 | 1 | 3 | 2 | m[1][2]+m[3][3]+24000+0+20*40*50=24000+0+40000=64000 | [[0, 6000, 18000, 0], [0, 0, 24000, 64000], [0, 0, 0, 60000], [0, 0, 0, 0]] | Split at k=2, choose min cost |
| 11 | Calculate cost for i=0, j=3, k=0 | 4 | 0 | 3 | 0 | m[0][0]+m[1][3]+0+64000+10*20*50=0+64000+10000=74000 | [[0, 6000, 18000, 74000], [0, 0, 24000, 64000], [0, 0, 0, 60000], [0, 0, 0, 0]] | Split at k=0 |
| 12 | Calculate cost for i=0, j=3, k=1 | 4 | 0 | 3 | 1 | m[0][1]+m[2][3]+6000+60000+10*30*50=66000+15000=81000 | [[0, 6000, 18000, 74000], [0, 0, 24000, 64000], [0, 0, 0, 60000], [0, 0, 0, 0]] | Split at k=1 |
| 13 | Calculate cost for i=0, j=3, k=2 | 4 | 0 | 3 | 2 | m[0][2]+m[3][3]+18000+0+10*40*50=18000+0+20000=38000 | [[0, 6000, 18000, 38000], [0, 0, 24000, 64000], [0, 0, 0, 60000], [0, 0, 0, 0]] | Split at k=2, choose min cost |
| 14 | End: minimum cost for full chain | - | 0 | 3 | - | 38000 | [[0, 6000, 18000, 38000], [0, 0, 24000, 64000], [0, 0, 0, 60000], [0, 0, 0, 0]] | Minimum multiplication cost is 38000 |
| 15 | Exit | - | - | - | - | - | - | All subproblems solved, final answer found |