状态压缩入门DP整理 只针对入门 一般都是用2进制的方法,压缩成一个数,所以n的范围都会特变小 一些套路 状态一般是很多的,可以搜索或者位运算筛选一下,基本都是这样的吧 当要存两个状态或者数组存不下的时候,不一一定要用数组下标来存状态 题目们: "P2915 [USACO08NOV]奶牛混合起来Mi ...
分类:
其他好文 时间:
2018-09-01 12:33:28
阅读次数:
169
4832: Noi2001 食物链 Description 动物王国中有三类动物A,B,C,这三类动物的食物链构成了有趣的环形。A吃B, B吃C,C吃A。 现有N个动物,以1-N编号。每个动物都是A,B,C中的一种,但是我们并不知道它到底是哪一种。 有人用两种说法对这N个动物所构成的食物链关系进行描 ...
分类:
其他好文 时间:
2018-06-18 11:01:44
阅读次数:
169
题目描述 动物王国中有三类动物 A,B,C,这三类动物的食物链构成了有趣的环形。A 吃 B,B 吃 C,C 吃 A。 现有 N 个动物,以 1 - N 编号。每个动物都是 A,B,C 中的一种,但是我们并不知道 它到底是哪一种。 有人用两种说法对这 N 个动物所构成的食物链关系进行描述: 第一种说法 ...
分类:
其他好文 时间:
2018-04-17 18:01:32
阅读次数:
152
传送门 Luogu 题目描述 司令部的将军们打算在NM的网格地图上部署他们的炮兵部队。一个NM的地图由N行M列组成,地图的每一格可能是山地(用“H” 表示),也可能是平原(用“P”表示),如下图。在每一格平原地形上最多可以布置一支炮兵部队(山地上不能够部署炮兵部队);一支炮兵部队在地图上的攻击范围如 ...
分类:
其他好文 时间:
2018-04-06 23:48:21
阅读次数:
203
题目传送门 PS:本道题目建议在对状压dp有一定了解的基础下学习,如有不懂可以先去学一下状压dp入门 题目大意:给你n*m个格子,有些格子可以用来部署军队,用P表示,有些则不能,用H表示,如果在一个格子上部署了军队,则上下左右各2个格子都不能部署军队,也就是呈十字架状,看到数据范围(n<=100,m ...
分类:
其他好文 时间:
2018-03-17 12:08:59
阅读次数:
184
题目描述 司令部的将军们打算在N*M的网格地图上部署他们的炮兵部队。一个N*M的地图由N行M列组成,地图的每一格可能是山地(用“H” 表示),也可能是平原(用“P”表示),如下图。在每一格平原地形上最多可以布置一支炮兵部队(山地上不能够部署炮兵部队);一支炮兵部队在地图上的攻击范围如图中黑色区域所示 ...
分类:
其他好文 时间:
2018-02-21 17:10:36
阅读次数:
206
套路区间DP题 先跟[NOI2001合并石子]一样,复制一下序列,断环成链。 然后设$dp[i,j,k]$为将区间$[i,j]$分成$k$个部分相乘的最优解,可以得出如下状态转移方程 $$dp[i,j,k]=\max_{i+k 2≤g define Mod(x) (x=((x%mod)+mod)%m ...
分类:
其他好文 时间:
2018-02-05 19:56:56
阅读次数:
152
http://poj.org/problem?id=1185 三维装压dp,压缩上一行状态与本行状态,枚举上两行状态转移 第一维可以滚掉,实际复杂度只枚举符合情况的情况,每行状态不会超过60并非$2^M$,证明参见组合数 ...
分类:
其他好文 时间:
2017-12-23 14:27:23
阅读次数:
178
http://172.20.6.3/Problem_Show.asp?id=1390 需要储存该行和上一行两个状态。通过观察规则可以发现条件允许的状态很少(相邻两个至少空两格),据此可以减少状态数量,从而极大压缩空间和时间。 需要储存该行和上一行两个状态。通过观察规则可以发现条件允许的状态很少(相邻 ...
分类:
其他好文 时间:
2017-11-05 13:16:41
阅读次数:
114
题目大意: 一个n*m(n<=100,m<=10)的格子图,里面有些地方可以放炮兵,有些地方不行,炮兵能像上下左右攻击到两格远的位置。 问在炮兵不会互相攻击的情况下,最多能放多少炮兵? 思路: 状压DP。 f[i][j][k]表示DP到第i行,当前行状态为j,上一行状态为k。 然后枚举当前行,这一行 ...
分类:
其他好文 时间:
2017-10-28 11:19:54
阅读次数:
165