首页 > 其他分享 >状压DP总结

状压DP总结

时间:2023-08-31 09:11:24浏览次数:33  
标签:总结 状压 然后 枚举 子集 集合 考虑 DP

动态规划-状压类-总结

状压类的题,一般都需要用到二进制的性质。(用到组合数概率也不小)

母题2

考虑用二进制表示摆放方式,然后使用位运算判断攻击。

变式

有一位很小,状压,状态类似于母题。

变式2

有交换操作,所以与逆序对相关,然后数学讨论一下,再状压。

变式3

考虑用集合、余数表示,注意只需要考虑在尾部加什么。

4

记录最后选的是什么和集合,然后处理一下关系加分。

5

贪心的考虑,选就选最大的,禁止最差的=不禁止,

6

预处理重量、花费,直接开一维表示集合,然后要用到 \(O(3^n)\) 枚举子集

7

钦定从状态中最小的标号点出发到达某个点经历的链数,然后注意顺时针/逆时针两种。

8

给定一张无向图,去掉任意条边后,使得每个子图都是团。(团中点两两有边)

枚举子集,然后判断这些点是否满足要求(预处理)。

9

拟定我们是按照顺序放的,最后除以阶乘即可。记录选到第几组、当前组包含的人的集合、总选择的人集合。直接考虑放在这个集合、新开集合。

注意还需保证每组内编号单调

10

横确定,竖就确定。我们只考虑横的。考虑按列处理,有点类似于插头DP,枚举分界位置,然后考虑不能有重复覆盖无法用竖的覆盖,分别用位运算

11

先预处理需要的亮亮最短路,然后就是常规的类似于 \(4\),注意尽量用刷表法,填表法不方便判断从哪里转移过去的。

12

容易想到爆搜,但是会超时。于是发现可以简单的用个记忆化搜索,还恰好是个状压。

13

记录子集可拼凑出的10以内的数集,我们由于要凑十,所以可以在状态中省去超过10的部分,转移时若超过10我们可以一类处理。

14

类似于13,但是处理的是差值。

15

14套一个容斥

规律

枚举子集可能用到(设状

态为 \(S\),子集为 \(T\),先令 \(T=S\),然后不断 \(T=(T-1)\&S\))。

往往记录的是集合、最后的选择(也可能是题目中的属性,也可能只记录一个然后枚举子集)。

可能要钦定上升、最小编号,避免算重。

还有部分小技巧(贪心、组合数、二进制)。

确定关系。

考虑刷表法/填表法二者哪个好实现或者更快。

状压可能和其他DP类型交织。

复杂度无法接受时,应当考虑去除冗余状态。

标签:总结,状压,然后,枚举,子集,集合,考虑,DP
From: https://www.cnblogs.com/wscqwq/p/17668703.html

相关文章

  • PyTorch多卡分布式训练DDP单机多卡
    前言因为课题组发的卡还没有下来,先向导师问了实验室的两张卡借用。之前都是单卡训练模型,正好在这个机会实践以下单机多卡训练模型的方法。关于DDP网上有很多资料,但都比较零碎(有些博客的代码甚至没办法run),Pytorch给出的官方文档看起来也比较吃力。因此这篇文章的主要目的是......
  • 使Windows11支持同时多个用户远程桌面连接(RDP)
    参考:https://www.wyr.me/post/701一、配置远程桌面服务更改限制连接的数量将用户限制到单独的远程桌面服务会话(可选)二、为termsrv.dll增加修改权限C:\Windows\System32\termsrv.dll详情请参考:https://www.wyr.me/post/701三、停止RemoteDesktopServices服务打开......
  • 使用第三方RDP(远程桌面)客户端远程连接Windows10/11
    一、打开「编辑组策略」并定位  二、指定RDP为安全层三、禁用「要求使用网络级别的身份验证……」......
  • 源代码泄露总结
    .git源码泄露.git信息泄露漏洞-简明原理及利用方法-FreeBuf网络安全行业门户Git信息泄露原理解析及利用总结-FreeBuf网络安全行业门户commit、tree和blob三个对象之间的关系|Git(geek-docs.com)参考源于上面师傅文章,引用以作学习之用!git简单使用Git常用命令实操1......
  • 8月pyyz考试总结
    【20230801暑期提高特训营】摸底考试#1T1-三值的排序\(100pts\)Solution可以考虑预处理三个值的个数。如果当前的值不在正确的位置,则在其应当在的位置范围内寻找是否有当前位置上应该放置的数字。若有则直接交换,若没有则任选数字交换,并统计答案。T2-日记\(100pts\)Solu......
  • 服务器Nginx环境如何配置WordPress伪静态规则
    WordPress伪静态是指将动态生成的WordPress网站页面的URL转换为静态的URL,以便于搜索引擎优化和提高用户访问体验。与动态URL相比,静态URL更容易被搜索引擎索引,因为它们更具可读性和可理解性,同时也更容易被用户记住和分享。最近看到有粉丝在问服务器Nginx环境下如何配置......
  • 开学总结
    我从7月8号开始放假,9号找兄弟玩了一天,10号就开始正式上班,本来8月初就能结课,可惜老天爷下了几天暴雨。其次我考了科目二,这些加起来一共花了一个月是时间。我正式开始学习是在8月12日,虽然学的东西不多,但还是想总结一下。截至到今天已经学了半个月了。学习收获:学习了linux的基础语......
  • uniapp 项目实践总结(二)从零开始搭建一个项目
    导语:本篇文章主要是项目方面的技术开发总结,新建一个项目可以选择使用可视化界面,也可以使用命令行搭建。目录可视化界面命令行搭建安卓开发环境苹果开发环境可视化界面安装软件使用官方推荐的HbuilderX软件,开发方式比较简单,内置相关环境以及终端,无需配置node。下......
  • AcWing - 闫氏DP分析法
    核心思想:从集合角度来分析DP问题在我们遇到的DP问题中,一般都是求在一个有限集内的最值,但是这些方案数量一般都是指数级别的,想要一个一个查找出来不太可能。所以DP方法是用来优化这种寻找最优方案的过程的。DP问题一般来说分析时都要经过两个阶段:状态表示(化零为整):指把一些具有......
  • 传输层协议总结
    传输层就是在信纸的空白上写上新的“收信人”信息。每一所房子【某一个终端】会配备一个管理员(传输层协议)。管理员从邮差手中接过信,会根据“收信人”,将信送给房子中的某个人。使用端口号(portnumber)来识别收信人(某个进程)。传输层协议TCP面向字节流服务面向连接,可靠,......