简介 状态压缩DP是将一连串状态压缩成为一个P进制(P通常为2)数,并由此达到压缩的目的 例题 P1879 [USACO06NOV]玉米田Corn Fields 因为只和之前的一行有关系,就可以通过状压先找出这一行中合法的状态,再和上一行的进行转移 Code P1896 SCOI2005互不侵犯 这 ...
分类:
其他好文 时间:
2019-08-11 21:29:02
阅读次数:
335
给定一张N个点M条边的有向无环图,分别统计从每个点出发能够到达的点的数量。 输入格式 第一行两个整数N,M,接下来M行每行两个整数x,y,表示从x到y的一条有向边。 输出格式 输出共N行,表示每个点能够到达的点的数量。 数据范围 1≤N,M≤300001≤N,M≤30000 输入样例: 输出样例: ...
分类:
编程语言 时间:
2019-08-11 21:02:49
阅读次数:
62
题目描述 在 n×nn \times nn×n 的棋盘上放 kkk 个国王,国王可攻击相邻的 888 个格子,求使它们无法互相攻击的方案总数。 在 n×nn \times nn×n 的棋盘上放 kkk 个国王,国王可攻击相邻的 888 个格子,求使它们无法互相攻击的方案总数。 输入 只有一行,包含两 ...
分类:
其他好文 时间:
2019-08-11 17:15:14
阅读次数:
132
一、线性 1.简单示例 (1)LIS问题 (2)LCS问题 (3)数字三角形 二、背包 1.0/1背包 2.完全背包 3.多重背包(二进制拆分) 4.分组背包 三、区间 四、树形 1.背包类 2.二次扫描与换根法 五、环形与后效性处理 六、状态压缩 七、倍增优化 八、数据结构优化 九、单调队列优化 ...
分类:
其他好文 时间:
2019-08-11 17:00:57
阅读次数:
107
题目链接:https://www.lydsy.com/JudgeOnline/problem.php?id=1079 AC代码: 1 /* 2 直接状态压缩是显然是不可行的,我们考虑如果没有相邻颜色不相同的限制的话, 3 如果两种油漆能染的木块数目相同,我们就可以认为两种油漆无差别。 4 设dp[a ...
分类:
其他好文 时间:
2019-08-10 12:02:25
阅读次数:
67
DP&图论 DAY 3 上午 状态压缩dp >状态压缩dp ?状态压缩是设计dp状态的一种方式。?当普通的dp状态维数很多(或者说维数与输入数据有关),但每一维总量很少是,可以将多维状态压缩为一维来记录。?这种题目最明显的特征就是: 都存在某一给定信息的范围非常小(在20以内),而我们在dp中所谓压 ...
分类:
其他好文 时间:
2019-08-09 19:40:28
阅读次数:
90
题目 Chosen Problem Solving and Program design as an optional course, you are required to solve all kinds of problems. Here, we get a new problem. There ...
分类:
其他好文 时间:
2019-08-09 13:12:17
阅读次数:
81
状压DP 状态压缩dp 状态压缩是设计dp状态的一种方式。 当普通的dp状态维数很多(或者说维数与输入数据有关),但每一维总量很少时,可以将多维状态压缩为一维来记录。 这种题目最明显的特征就是:都存在某一给定信息的范围非常小(在20以内),而我们在dp中所谓压缩的就是这一信息。 (或者是在做题过程中 ...
分类:
其他好文 时间:
2019-08-08 21:02:33
阅读次数:
89
题面有点坑,翻译内容中没有指明n的范围,通过观察原题面得到$n \leq 15$并大致猜测这是一个状态压缩dp最小生成树显然不可行,可以举例说明存在某种情况某边要经过两次或更多对于任意一个岛屿$i$到任意一个岛屿$j$的最短距离显然是固定的,每个岛域之间的距离(不经过其他岛屿)可以用bfs预处理出来 ...
分类:
其他好文 时间:
2019-07-25 20:29:42
阅读次数:
104
状态压缩 + 模拟 把AB串压缩成二进制,A用1表示,B用0表示。 枚举所有问题的子集,选中的问题用1表示,其余的用0表示。对于每个子集,我们去和所有问题按位与,这样对于选中的问题,答案是A的都是1,答案是B的都是0,不同的回答得到的状态也不同。 最后统计每个子集是否有超过k组问题不一样就行了。 ...
分类:
其他好文 时间:
2019-07-15 21:12:57
阅读次数:
136