状态压缩dp小结

Posted zsben991126

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了状态压缩dp小结相关的知识,希望对你有一定的参考价值。

最近一段时间算是学了一些状态压缩的题目,在这里做个小结吧

首先是炮兵布阵类题目,这类题目一开始给定一个矩形,要求在上面放置炮兵,如果在一格放了炮兵那么周围的某些格子就不能放炮兵,求最大能放置炮兵的数量

poj1185炮兵布阵

hdu2176 炮兵布阵修改版

poj3254 炮兵布阵弱化版

poj1565 方格取数

 

然后是状态集合类的题目,这类题目给定一个集合的元素,要求重排列以达到最大化收益,即从已知状态推出未知状态,通常需要处理出元素之间的两两对应关系

zoj3471 模板

poj2817 在枚举集合的基础上升维

poj2241 朴素LIS算法,也是枚举两两之间的关系

poj2836 也是枚举两两关系,但是这题的矩形其实就是两个点之间的关系

 

轮廓线类题,其实类似炮兵布阵等题目都可以用轮廓线解,并且时间复杂度较优,但常见的应该还是铺地砖等题目

poj2411 模板题

 

其他题

poj2441 通过牛少的状态推出牛多的状态,利用滚动数组实现

hdu4064 三进制的状态压缩,但是实质上有点类似于炮兵布阵类题目,通过上下两行状态的配对求出答案,但是本题的状态需要通过dfs搜出,并不是枚举状态

以上是关于状态压缩dp小结的主要内容,如果未能解决你的问题,请参考以下文章

HDU1074(状态压缩DP)

算法竞赛专题解析(15):DP应用--状态压缩DP

算法竞赛专题解析(15):DP应用--状态压缩DP

dp状态压缩

状态压缩DP

状态压缩dp优化一半指数的方法