状压DP

本文最后更新于:2024年2月12日 晚上

状压DP

题目:

5856. 完成任务的最少工作时间段

1434. 每个人戴不同帽子的方案数

1617. 统计子树中城市之间最大距离

状压DP是动态规划的一种,通过将状态压缩为整数来达到优化转移的目的。

状压DP的数据范围一般都会小于20。

状态压缩可以简单理解为把一个boolean数组压缩到了一个十进制数字上,十进制的二进制表示中1代表选了该位,0代表不选,之后便可以通过使用位运算的各种技巧来简化代码逻辑。

选择类状压

状压DP:先考虑那一部分是不能变的,那一部分是可以变的,可以变的顺序拿,不能变的枚举状态

2172. 数组的最大与和

1879. 两个数组最小的异或值之和