博主是初学者,以下仅代表个人观点,若有错误欢迎指出。

状压dp

此dp可以理解为最暴力的dp,因为他需要遍历每个状态,所以将会出现2^n的情况数量,所以明显的标志就是数据不能太多(好像是<=16?),然后遍历所有状态的姿势就是用二进制来表示,01串,1表示使用,0表示未使用,就把所有的状态投射到很多二进制的数上(类似于hash?)然后对每个状态找一"些"状态的方法如下代码,即状压dp的精髓!!!

补充:对位运算要熟练,位运算很重要!位运算很重要!位运算很重要!

for(s=1;s<(1<<n);s++)
{for(i = n-1 ; i >=0;i--){       tem=1<<i;        //  1在某一位,其它位为0if(tem & s)         //判断是否能由此种状态达到,即判断当前位是1还是0{past=s-tem;     //当前位的1变为0即为上一状态}    }
}

对状压dp的一点理解相关推荐

  1. NYOJ 81:炮兵阵地(状压DP)

    炮兵阵地 时间限制:2000 ms  |  内存限制:65535 KB 难度:6 描述 司令部的将军们打算在N*M的网格地图上部署他们的炮兵部队.一个N*M的地图由N行M列组成,地图的每一格可能是山地 ...

  2. 牛客网Chino with Queue【状压DP】

    Chino的数学很差,因此Cocoa非常担心.今天,Cocoa准备教Chino和排队有关的问题. 我们总是会学各种排列组合的问题,那些题目大多数都是套路.而Cocoa不喜欢套路. 通常来说,每个人在排 ...

  3. UVA10296 Jogging Trails(中国邮递员问题)(欧拉回路、一般图最大权匹配 / 状压DP)

    整理的算法模板合集: ACM模板 目录 思路 UVA10296 Jogging Trails 题目翻译: 给你n个点,m条无向边,每条边有一定的距离数值,构造成一个连通图.问从任意一点出发,遍历所有的 ...

  4. UVa 11825 (状压DP) Hackers' Crackdown

    这是我做状压DP的第一道题,状压里面都是用位运算来完成的,只要耐下心来弄明白每次位运算的含义,还是容易理解的. 题意: 有编号为0~n-1的n台服务器,每台都运行着n中服务,每台服务器还和若干台其他服 ...

  5. POJ 1321 棋盘问题(DFS 状压DP)

    用DFS写当然很简单了,8!的复杂度,16MS搞定. 在Discuss里看到有同学用状态压缩DP来写,就学习了一下,果然很精妙呀. 状态转移分两种,当前行不加棋子,和加棋子.dp[i][j]中,i代表 ...

  6. CodeForces - 1550E Stringforces(二分+状压dp)

    题目链接:点击查看 题目大意:给出一个长度为 nnn 的字符串,只包含前 kkk 个小写字母以及通配符 ???,现在可以将通配符替换成任意的前 kkk 个字母中的一个.设 f[i]f[i]f[i] 为 ...

  7. [蓝桥杯][算法提高VIP]Sharing Chocolate(状压dp记忆化搜索)

    题目描述 每天,巧克力在它的许多形式上被全世界数百万人分享.它是一个真正普遍的糖果,实际上在世界上每个国家都能得到. 你发现唯一比吃巧克力更好的事情是把它分享给朋友.不幸的是,你的朋友非常挑剔,有着不 ...

  8. *【HDU - 4272 】LianLianKan (dfs 或 状压dp,贪心不行)

    题干: I like playing game with my friend, although sometimes looks pretty naive. Today I invent a new ...

  9. [状压dp]洛谷 P2157 学校食堂

    题目描述 小F 的学校在城市的一个偏僻角落,所有学生都只好在学校吃饭.学校有一个食堂,虽然简陋,但食堂大厨总能做出让同学们满意的菜肴.当然,不同的人口味也不一定相同,但每个人的口味都可以用一个非负整数 ...

最新文章

  1. 找出和为某个数的连续正整数序列
  2. 2.RabbitMq-持久化
  3. app显示服务器借口错误,hbuider 运行 uni-app 电脑端安卓模拟器接口请求错误
  4. 山东大学计算机系统原理,山东大学计算机组成原理三套题汇总
  5. MATLAB库函数upfirdn(分数倍采样率变换)的C语言实现(采用了STL::vector)
  6. 阿里云 ESSD 采用自研新一代存储网络协议,打造“超级高速”
  7. linux内核killler,Linux内核参数overcommit_memory和OOM killer介绍
  8. 域名有效期10年后怎么办
  9. sql怎么注销当前登录状态_4种方法教你获取Oracle数据库当前会话/进程的session id...
  10. mysql异构迁移_如何利用数据异构实现多级缓存和数据迁移
  11. 取色器——TakeColor绿色安全简单
  12. matlab拟合热敏电阻温度特性曲线,深度解析NTC热敏电阻进行对数分段曲线拟合的技术分析...
  13. zte d90 java_zte d90 驱动程序(最新更新)尼康d90驱动
  14. Beaglebone Black–GPIO 开关 LED(三极管与继电器实验)
  15. HTML中gt的含义
  16. HMM(Hidden Markov Model)
  17. 数据结构 基本概念(数据项--数据元素--数据对象-数据类型-抽象数据类型)
  18. K2 BPM_北汽新能源业务流程管理信息系统建设思考_全球领先的工作流引擎
  19. python3 延时、定时、指定时间执行任务的几种方法
  20. col-xs-*,col-sm-*,col-md-* 的意义

热门文章

  1. Linux操作系统引导过程
  2. 微信公众号 语音转文字api_微信聊天的语音转文字,居然自动添加表情?你猜不到吧...
  3. Codeforces Round #809 (Div. 2)
  4. [unreal4入门系列之十三] UE4创建平视显示器(HUD)
  5. 长沙南方职院•美和易思校企共建专业举行家长开放日活动
  6. 个人微信公众号搭建Python实现 -个人公众号搭建-构想(14.3.1)
  7. allegro 导入ADS Layout的方法
  8. 草图大师Sketchup打不开3d模型库怎么办
  9. asmi lpar_管理LPAR启动顺序并使用系统概要文件验证资源分配
  10. 2021-2025年中国化工制造软件行业市场供需与战略研究报告