状态压缩DP是对于一些可以使用的条件(一个图中某一个数的值不大于30)推的一种动态规划。

这种动态规划同样是由前面的状态推后面的状态,满足没有后效性。只是前一行或多行的状态在某一维数组中用二进制数01表示,进行位运算,这样既高效,又便捷。

对于具体的题目可以根据具体的题目描述进行位运算表示。

小做了几道这样的题目:

走砖铺道问题poj2411就是用0表示这一行这一位空着,用1表示放满当前行必须&前一行某一位==1并且必须判断横放的情况。

poj3254牛题也是类似的就是多加了一个限制条件,提前预处理出可能的情况。

poj1185是NOI2001的题目炮兵阵地是多加了一维的状态使用三维数组更新。