| 1 | Initialize DP table | - | - | All zeros | Create 4x8 table filled with 0 | [[0,0,0,0,0,0,0,0],
[0,0,0,0,0,0,0,0],
[0,0,0,0,0,0,0,0],
[0,0,0,0,0,0,0,0]] |
| 2 | i=1, w=0 | 1 | 0 | 0 | Weight 1 > capacity 0? Yes, copy dp[0][0] | [[0,0,0,0,0,0,0,0],
[0,0,0,0,0,0,0,0],
[0,0,0,0,0,0,0,0],
[0,0,0,0,0,0,0,0]] |
| 3 | i=1, w=1 | 1 | 1 | 1 | Weight 1 <= 1, max(dp[0][1], value[0]+dp[0][0])=max(0,1+0)=1 | [[0,0,0,0,0,0,0,0],
[0,1,0,0,0,0,0,0],
[0,0,0,0,0,0,0,0],
[0,0,0,0,0,0,0,0]] |
| 4 | i=1, w=2 | 1 | 2 | 1 | Weight 1 <= 2, max(dp[0][2],1+dp[0][1])=max(0,1+0)=1 | [[0,0,0,0,0,0,0,0],
[0,1,1,0,0,0,0,0],
[0,0,0,0,0,0,0,0],
[0,0,0,0,0,0,0,0]] |
| 5 | i=1, w=3 | 1 | 3 | 1 | Weight 1 <= 3, max(dp[0][3],1+dp[0][2])=max(0,1+0)=1 | [[0,0,0,0,0,0,0,0],
[0,1,1,1,0,0,0,0],
[0,0,0,0,0,0,0,0],
[0,0,0,0,0,0,0,0]] |
| 6 | i=1, w=4 | 1 | 4 | 1 | Weight 1 <= 4, max(dp[0][4],1+dp[0][3])=max(0,1+0)=1 | [[0,0,0,0,0,0,0,0],
[0,1,1,1,1,0,0,0],
[0,0,0,0,0,0,0,0],
[0,0,0,0,0,0,0,0]] |
| 7 | i=1, w=5 | 1 | 5 | 1 | Weight 1 <= 5, max(dp[0][5],1+dp[0][4])=max(0,1+0)=1 | [[0,0,0,0,0,0,0,0],
[0,1,1,1,1,1,0,0],
[0,0,0,0,0,0,0,0],
[0,0,0,0,0,0,0,0]] |
| 8 | i=1, w=6 | 1 | 6 | 1 | Weight 1 <= 6, max(dp[0][6],1+dp[0][5])=max(0,1+0)=1 | [[0,0,0,0,0,0,0,0],
[0,1,1,1,1,1,1,0],
[0,0,0,0,0,0,0,0],
[0,0,0,0,0,0,0,0]] |
| 9 | i=1, w=7 | 1 | 7 | 1 | Weight 1 <= 7, max(dp[0][7],1+dp[0][6])=max(0,1+0)=1 | [[0,0,0,0,0,0,0,0],
[0,1,1,1,1,1,1,1],
[0,0,0,0,0,0,0,0],
[0,0,0,0,0,0,0,0]] |
| 10 | i=2, w=0 | 2 | 0 | 0 | Weight 3 > 0? Yes, copy dp[1][0] | [[0,0,0,0,0,0,0,0],
[0,1,1,1,1,1,1,1],
[0,0,0,0,0,0,0,0],
[0,0,0,0,0,0,0,0]] |
| 11 | i=2, w=1 | 2 | 1 | 1 | Weight 3 > 1? Yes, copy dp[1][1]=1 | [[0,0,0,0,0,0,0,0],
[0,1,1,1,1,1,1,1],
[0,1,0,0,0,0,0,0],
[0,0,0,0,0,0,0,0]] |
| 12 | i=2, w=2 | 2 | 2 | 1 | Weight 3 > 2? Yes, copy dp[1][2]=1 | [[0,0,0,0,0,0,0,0],
[0,1,1,1,1,1,1,1],
[0,1,1,0,0,0,0,0],
[0,0,0,0,0,0,0,0]] |
| 13 | i=2, w=3 | 2 | 3 | 4 | Weight 3 <= 3, max(dp[1][3],4+dp[1][0])=max(1,4+0)=4 | [[0,0,0,0,0,0,0,0],
[0,1,1,1,1,1,1,1],
[0,1,1,4,0,0,0,0],
[0,0,0,0,0,0,0,0]] |
| 14 | i=2, w=4 | 2 | 4 | 5 | Weight 3 <= 4, max(dp[1][4],4+dp[1][1])=max(1,4+1)=5 | [[0,0,0,0,0,0,0,0],
[0,1,1,1,1,1,1,1],
[0,1,1,4,5,0,0,0],
[0,0,0,0,0,0,0,0]] |
| 15 | i=2, w=5 | 2 | 5 | 5 | Weight 3 <= 5, max(dp[1][5],4+dp[1][2])=max(1,4+1)=5 | [[0,0,0,0,0,0,0,0],
[0,1,1,1,1,1,1,1],
[0,1,1,4,5,5,0,0],
[0,0,0,0,0,0,0,0]] |
| 16 | i=2, w=6 | 2 | 6 | 5 | Weight 3 <= 6, max(dp[1][6],4+dp[1][3])=max(1,4+1)=5 | [[0,0,0,0,0,0,0,0],
[0,1,1,1,1,1,1,1],
[0,1,1,4,5,5,5,0],
[0,0,0,0,0,0,0,0]] |
| 17 | i=2, w=7 | 2 | 7 | 5 | Weight 3 <= 7, max(dp[1][7],4+dp[1][4])=max(1,4+1)=5 | [[0,0,0,0,0,0,0,0],
[0,1,1,1,1,1,1,1],
[0,1,1,4,5,5,5,5],
[0,0,0,0,0,0,0,0]] |
| 18 | i=3, w=0 | 3 | 0 | 0 | Weight 4 > 0? Yes, copy dp[2][0] | [[0,0,0,0,0,0,0,0],
[0,1,1,1,1,1,1,1],
[0,1,1,4,5,5,5,5],
[0,0,0,0,0,0,0,0]] |
| 19 | i=3, w=1 | 3 | 1 | 1 | Weight 4 > 1? Yes, copy dp[2][1]=1 | [[0,0,0,0,0,0,0,0],
[0,1,1,1,1,1,1,1],
[0,1,1,4,5,5,5,5],
[0,1,0,0,0,0,0,0]] |
| 20 | i=3, w=2 | 3 | 2 | 1 | Weight 4 > 2? Yes, copy dp[2][2]=1 | [[0,0,0,0,0,0,0,0],
[0,1,1,1,1,1,1,1],
[0,1,1,4,5,5,5,5],
[0,1,1,0,0,0,0,0]] |
| 21 | i=3, w=3 | 3 | 3 | 4 | Weight 4 > 3? Yes, copy dp[2][3]=4 | [[0,0,0,0,0,0,0,0],
[0,1,1,1,1,1,1,1],
[0,1,1,4,5,5,5,5],
[0,1,1,4,0,0,0,0]] |
| 22 | i=3, w=4 | 3 | 4 | 5 | Weight 4 <= 4, max(dp[2][4],5+dp[2][0])=max(5,5+0)=5 | [[0,0,0,0,0,0,0,0],
[0,1,1,1,1,1,1,1],
[0,1,1,4,5,5,5,5],
[0,1,1,4,5,0,0,0]] |
| 23 | i=3, w=5 | 3 | 5 | 6 | Weight 4 <= 5, max(dp[2][5],5+dp[2][1])=max(5,5+1)=6 | [[0,0,0,0,0,0,0,0],
[0,1,1,1,1,1,1,1],
[0,1,1,4,5,5,5,5],
[0,1,1,4,5,6,0,0]] |
| 24 | i=3, w=6 | 3 | 6 | 6 | Weight 4 <= 6, max(dp[2][6],5+dp[2][2])=max(5,5+1)=6 | [[0,0,0,0,0,0,0,0],
[0,1,1,1,1,1,1,1],
[0,1,1,4,5,5,5,5],
[0,1,1,4,5,6,6,0]] |
| 25 | i=3, w=7 | 3 | 7 | 9 | Weight 4 <= 7, max(dp[2][7],5+dp[2][3])=max(5,5+4)=9 | [[0,0,0,0,0,0,0,0],
[0,1,1,1,1,1,1,1],
[0,1,1,4,5,5,5,5],
[0,1,1,4,5,6,6,9]] |