1*2 密铺优化问题的处理
问题:长 n 宽 m 以 1*2 铺,若干地不可铺,求最多铺数或方案数。m 极小,一般不超过 15。
正解是轮廓线动态规划,一行行处理。次一点的做法是插头型动态规划,一个个处理。
2*2 和 1+2 密铺优化问题的处理
以插头型动态规划解决这类问题的核心是设计每个块的插头,设计理念是避免歧义,为此可能引入更多种插头。
互不相邻条件和权值优化问题的处理
例如,2*2 权值 3,1+2 权值 2,要求 2*2 互不相邻,优化最大权值和。
引入新插头满足不相邻条件。将权值分散至每个块,取整先乘 4,如此 2*2 每个块权值 3,1+2 中间块权值 8,两边块权值 0,动态规划后得出优化解除以 4 即为最终解。
2*3 问题和插头简并
设插头数 k k k,块种类 l l l,则空间复杂度 O ( k m ) O(k^m) O(km),时间复杂度 O ( n m l k m ) O(nmlk^m) O(nmlkm),通过设计减少插头即为关键。由于某些插头所连接子结构的相似性,可以令其共用插头,称为插头的简并。
2+1+2 问题的基于对称性的插头简并
旋转对称的插头可以简并,镜面对称和简并无关。
4*4 问题的基于自相关性的插头简并
4*4 中间四元环的插头简并而 2*2 不能简并,是由于形如 2*2 歧义在 4*4 下,由于外部过大而自身交叠故无法产生有效解,引发的自身歧义消除。