我的状态定义为,当考虑第 v 个食材的时候, fi,j,k 是选到第 i 个烹饪方法的时候, 总共选取了 j 个方法,k 是选取方法中,食材为 v 的方法的个数
然后转移式为
fi,j,k=fi−1,j,k−1+fi−1,v−1,k−1⋅ai,v+fi−1,j−1,k⋅(si−ai,v)
然而题解中的定义不一样
接下来设计状态。fi,j,k
表示对于col这一列,前 i 行在 col 列中选了 j 个,在其他列中选了 k 个,那么令 si
为第 i 行的总和
然后题解往下就得到了这个式子的优化,但是我并没有办法直接从我的式子中优化
况且,平常做题时应该也不会想着把状态定义推倒重来,是否状态定义错了就很难得到优化了