状压dp
Let_life_stop
和强者对战才是提升自己最快的方法。
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
P2622 关灯问题II (状态压缩入门)
题目链接: https://www.luogu.org/problemnew/show/P2622具体思路:暴力,尝试每个开关,然后看所有的情况中存不存在灯全部关闭的情况,在储存所有灯的情况的时候,观察到n的值不大,所以可以考虑用二进制进行存储,如果说这个数用二进制表示的时候,如果第i位是1,代表第(i+1)个灯当前的状态是开着的,否则就是关闭的.AC代码:#include<i...原创 2018-12-13 16:37:59 · 409 阅读 · 0 评论 -
P1879 [USACO06NOV]玉米田Corn Fields (状压dp入门)
题目链接: https://www.luogu.org/problemnew/show/P1879具体思路: 我们可以先把所有合法的情况枚举出来,然后对第一行判断有多少种情况满足,然后对于剩下的行数,我们可以继续枚举,但是枚举的时候要注意,要判断一下和它的上面一行的各种情况会不会冲突,然后一直枚举就可以了.注意点:位运算符的优先级比等号之类的低,所以如果要判断的话,最好放在括号里面判断....原创 2018-12-14 20:00:55 · 231 阅读 · 0 评论 -
勇敢的妞妞 ( 状压 + 思维)
题目链接:https://ac.nowcoder.com/acm/contest/315/E具体思路:首先,对于当m>=5的时候,我们可以直接选取每一列中最大的那一个,直接相加就可以.然后对于当m<5的时候,我们可以采取状压的思路,因为列数只有5,所以最多只有32中情况,所以将每种情况的最优的那一个选取出来,然后再用搜索的方式将最优解再找出来.AC代码:#incl...原创 2018-12-14 22:13:25 · 431 阅读 · 0 评论 -
D - Doing Homework HDU - 1074 (状压dp)
题目链接:https://cn.vjudge.net/contest/68966#problem/D具体思路:我们可以把每个情况都枚举出来,然后用递归的形式求出最终的情况.比如说 我们要求 10101 的扣分最小值,我们可以把 10100和00101和10001这三种 情况加上 对应的课的时候的最小值,具体解释看代码(再理解一下,对于这个公式tmp[i]=tmp[i^(1<&...原创 2018-12-15 22:23:05 · 191 阅读 · 0 评论 -
状压dp(B - 炮兵阵地 POJ - 1185 )
题目链接:https://cn.vjudge.net/contest/276236#problem/B题目大意:略 具体思路:和我的上一篇写状压dp的思路差不多,不过就是这个题相当于上一个题的升级版,变成了左右,上下都会有限制,并且限制的步数是2,观察数据范围,如果按照上一个题的话,如果要是计算正确的范围取值的话,肯定会超时,所以我们可以先将所有的满足的情况先筛选出来,就算m取到10...原创 2019-01-04 09:15:18 · 240 阅读 · 0 评论 -
状压dp+floyed(C - Hie with the Pie POJ - 3311 )
题目链接:https://cn.vjudge.net/contest/276236#problem/C题目大意:给你一个有n+1(1<=n<=10)个点的有向完全图,用矩阵的形式给出任意两个不同点之间的距离。(其中从i到j的距离不一定等于从j到i的距离)现在要你求出从0号点出发,走过1到n号点至少一次,然后再回到0号点所花的最小时间。输入:包含多组实例。每个实例第一个为n...原创 2019-01-04 10:48:19 · 271 阅读 · 0 评论
分享