思路就是 dp(应该也算背包)
dp[i][j]dp[i][j]dp[i][j] 前 iii 个得 jjj 分的 min。
然后转移:dp[i][j]=min{dp[i−1][l]+calc(i,j−l)}dp[i][j]=\min\{dp[i-1][l]+calc(i,j-l)\}dp[i][j]=min{dp[i−1][l]+calc(i,j−l)}
其中 calc(i,j−l)calc(i,j-l)calc(i,j−l) 也 dp 算一下。
具体就是对于 calc(i,j)calc(i,j)calc(i,j) 枚举先填了多少行,然后枚举分数 jjj 计算得到 jjj 还要填多少列,更新一下。再枚举先填了多少列同理。特殊处理 calc(i,a[i]+b[i])calc(i,a[i]+b[i])calc(i,a[i]+b[i]) 和 calc(i,a[i]+b[i]−1)calc(i,a[i]+b[i]-1)calc(i,a[i]+b[i]−1) 都是 a[i]×b[i]a[i]\times b[i]a[i]×b[i]。
但是 wa 2。