状压dp
disPlayLzy_
梦在前方,路在脚下
展开
-
Luogu P1171 售货员的难题___状压dp
状压dp原创 2022-06-29 21:48:26 · 123 阅读 · 0 评论 -
Luogu P4294 [WC2008]游览计划___斯坦纳树+spfa+状压dp
题目大意:n*m的矩阵,矩阵上有k个景点,对于某个不是景点的点,打通它需要耗费aia_iai(打通后经过不需要耗费),问将n个景点连通需要的最小花费,以及打通的一种最优方案。分析:好像是斯坦纳树的模板题,设fi,j,sf_{i,j,s}fi,j,s表示已经连通的景点状态为sss,这个连通块包含点(i,j)(i,j)(i,j)时的最小点权和是多少然后我们从小到大枚举状态sss,然后...原创 2019-08-11 21:05:24 · 224 阅读 · 0 评论 -
Jzoj P3737 挖宝藏___斯坦纳树+spfa+状压dp
题目大意:分析:发现很像斯坦纳树,设fk,i,j,sf_{k,i,j,s}fk,i,j,s表示挖的宝藏状态为s,斯坦纳树上包含点(k,i,j)(k,i,j)(k,i,j)时的最小花费考虑转移做到了第kkk层,我们枚举这层的宝藏的挖的状态,从小到大,当前枚举到了状态s,对于每个点我们先看之前的状态能否更新它,即fk,i,j,s=min(fk,i,j,s,fk,i,j,s′+...原创 2019-08-10 20:09:01 · 243 阅读 · 0 评论 -
Jzoj P4787 数格子___状压dp+矩阵快速幂
题目大意:用2∗12*12∗1的骨牌覆盖4∗N4*N4∗N的矩形。问方案数对MMM取模后的结果。多组数据,不超过101010组1≤N≤109,0≤M≤1051≤N≤10^9,0≤M≤10^51≤N≤109,0≤M≤105分析:令fi,sf_{i,s}fi,s,表示第iii列放了多少个横着的骨牌时覆盖完前iii列的方案总数,sss为这些横着的骨牌的位置的状态[i,1][i,1][i...原创 2019-05-29 16:49:56 · 133 阅读 · 0 评论 -
Jzoj P1040 [GDOI2007]夏娜的菠萝包___状压dp
题目大意:有nnn种菠萝包,每种一个。每个菠萝包都有一个初始美味值TiT_iTi,每过一天减少DiD_iDi,有mmm种搭配,每天都可以选择一种搭配进行使用,每种搭配由KiK_iKi个菠萝包组成的,一种搭配的总美味值是菠萝包当天美味值之和再加上一个额外的固定搭配美味值EiE_iEi。一旦某种搭配的其中一个菠萝包坏掉了,这个搭配就不能选用了。存在两个搭配,里面的组合是一样的,但额...原创 2019-05-15 20:10:14 · 230 阅读 · 0 评论 -
Bzoj P1087 [SCOI2005]互不侵犯King___ 状压dp
题目大意:在n×nn×nn×n的棋盘里面放KKK个国王,使他们互不攻击,共有多少种摆放方案。国王能攻击到它上下左右,以及左上左下右上右下八个方向上附近的各一个格子,共8个格子。1&lt;=N&lt;=91 &lt;=N &lt;=91<=N<=90&lt;=K&lt;=N∗N0 &lt;= K &lt;= N * ...原创 2018-11-21 16:54:08 · 152 阅读 · 0 评论 -
Bzoj P3717 [PA2014]Pakowanie___状压dp
题目大意:你有nnn个物品,体积分别为a1,a2,...,an−1,ana_1,a_2,...,a_{n-1},a_na1,a2,...,an−1,an你也有mmm个包,容量分别为c1,c2,...,cm−1,cmc_1,c_2,...,c_{m-1},c_mc1,c2,...,cm−1,cm物品不可被分割,一个包可以放多个物品,问把所有物品装入包中,至少需要几个包?1&a...原创 2018-11-07 19:18:20 · 108 阅读 · 0 评论 -
Jzoj P3521 道路覆盖___二分+状压dp
题目大意:路径长为NNN,第iii个位置高度为HiH_iHi,能用NNN种泥土,覆盖范围为KKK,对于第iii种泥土,它的价格为C[i]C[i]C[i],能使得区间[i,min(n,i+k−1)][i,min(n,i+k-1)][i,min(n,i+k−1)]的路段的高度增加E[i]E[i]E[i]。要使得这条路最低的高度尽量高,并且满足:①每种泥土只能使用一次。①每种泥土只能使用一次。①...原创 2018-10-22 11:58:48 · 183 阅读 · 0 评论 -
Poj P2288 Islands and Bridges___壮压dp
题目大意:给出QQQ组数据, 每组数据给出NNN个点的带权无向图,点从000到N−1N−1N-1标号,求起点000到起终点N−1N−1N-1的最短HamiltonHamiltonHamilton路径。 对于路径权值的计算: 1.经过所有点的权值相加。 2.经过的连续两个点的权值的乘积。 3.能够直接满足a−&gt;b−&gt;c−&gt;aa−&gt;b−&gt;c−&gt;aa->.原创 2018-07-31 15:38:30 · 159 阅读 · 0 评论 -
NOIP 2017 提高组 宝藏___状压dp+dfs
题目大意:题解:这题不难发现,f[i]表示选了的点的状态为i,用的最小代价,dis[i]表示起点到i经过的宝藏数。 然后转移的话,不知道从何做起, 后发现可以枚举能作为起点的N个点,然后果断用dfs去更新代码:#include<cstdio>#define INF 1234567890int n,m,rp,a[20][20],f[10000],di...原创 2018-03-09 20:04:58 · 588 阅读 · 0 评论 -
汕头市选 2014 舞伴___状压dp
题目大意:N 个男孩,N 个女孩,男孩和女孩可能是朋友,也可能不是朋友。现在要组成N 对舞伴,要求每对 伴都是一男一女,且他们是朋友。 统计不同配对方案的数量,因为结果很大,所以只要求除以M 的余数。• 对于50% 的数据,N • 对于100% 的数据,1 题解:这题观察数据不难发现是一道很显然的状压dp: 我们设f[i,s]表示前i个男生女生状态为j时的配对方案总数。原创 2018-01-30 20:45:56 · 279 阅读 · 0 评论 -
jzoj P1969 周长
题目大意:有n块宽度1长度ai的矩形,求这N块农田不同的排列顺序拼接在一起使得周长最大,问最大周长max是多少,有多少种方式可以使得周长为max。 例: 对于40%的数据,有N对于100%的数据,有N题解:因为每块农田互不相同(即使长度一样也不同)那么显然有n!种放置方法,所以暴力搜索显然可得40分。 而如果要拿到100分: 我们可以往状压dp的思路去想: 设f[i,s原创 2018-01-04 21:11:55 · 341 阅读 · 0 评论 -
洛谷 P2704 [NOI2001]炮兵阵地
题目大意:给出N*M的地图,有很多空地P跟山地H,炮台可以攻击周边: 求最多能放多少个炮台并且他们互不攻击。N≤100;M≤10题解:这题是状压dp的一道经典题目, 对于每行10个东东可以放就是2^10种可能,这样转移就会TLE 所以我们发现因为任意2个炮之间距离至少为2,所以我们每行存在的可行状态至多不超过2^5 因此我们暴力处理出每行的这些状态以及 每个状态存在多原创 2018-01-12 21:06:29 · 627 阅读 · 0 评论 -
jzoj 模拟赛总结(2017.07.14)
T1. Square : 题目大意: 有一个平面直角坐标系,小D将N个左下角为x1,y1,右上角为x2,y2的方块纸放在这个坐标系中,N个方格纸的都与x轴、y轴平行,Q次查询对于平面直角坐标系中的一个点[x,y]有多少个方格纸覆盖(包括方格纸的边和点)。30%的数据, N*Q≤10^7。 100%的数据, N,Q≤10^5,0var a,sum:array [0..3001,0..30原创 2017-07-14 16:04:05 · 479 阅读 · 0 评论