[动态规划] 黑客的攻击 Hacker's CrackDown Uva 11825
来源:互联网 发布:淘宝不匿名购买会怎样 编辑:程序博客网 时间:2024/06/10 16:47
抽象为数学模型就是, 取尽可能多的互不相交的子集 , 使得每一个子集都能覆盖全集
#include <algorithm>#include <cstring>#include <cstdio>using namespace std;int n;int P[1000],cover[1000],f[1000];int main(){scanf("%d", &n);for (int i = 0; i < n;i++){int m, x;scanf("%d", &m);P[i] == 1 << i;while (m--){scanf("%d", &x);P[i] |= (1 << x);}}for (int S = 1; S < n;S++){cover[S] = 0;for (int i = 0; i < n; i++){if (S&(1 << i)) cover[S] |= P[i];}}f[0] = 0;int ALL = (1 << n) - 1;for (int S = 1; S < n;S++){f[S] = 0;for (int S0 = S; S0;S0=(S0 - 1) & S)// 这是最关键的一部, 取子集操作 {if (cover[S0]==ALL){f[S] = max(f[S], f[S^S0] + 1);//取出子集的补集+1与最大值比较 }}}printf("%d", f[ALL]);return 0;}
0 0
- [动态规划] 黑客的攻击 Hacker's CrackDown Uva 11825
- 黑客的攻击 Hacker‘s crackdown UVA11825 状态压缩动态规划
- UVA 11825(Hacker's Crackdown-集合)
- UVA 11825 Hacker's Crackdown(状压dp)
- 枚举,集合,动态规划(黑客的攻击,uva 11825)
- uva 11825 ,Hacker's Crackdown 状态压缩 dp
- Hacker's Crackdown(UVa 11825)状态压缩dp+数学模型
- 【动态规划】[UVa 11825]Hackers' Crackdown
- uva 11825 黑客的攻击 Hackers' Crackdown 集合dp+我的优化 非常好的好题
- uva 11825 Hackers' Crackdown(动态规划-状态压缩DP)
- 黑客Hacker行话及攻击的方法
- NKOI 3720(UVA 11825)黑客的攻击
- 黑客的攻击(UVA 11825)
- Hacker Crackdown
- UVA11825[Hackers' Crackdown] 动态规划
- Uva-11825-Hackers’ Crackdown
- UVA 11825 Hackers' Crackdown
- UVA 11825 Hackers' Crackdown
- java中的集合类
- strace工具的实现原理
- HDU 2602--Bone Collector【01背包】
- C++RTTI小总结
- Play On Words
- [动态规划] 黑客的攻击 Hacker's CrackDown Uva 11825
- JavaScript点滴记录(一)
- 360面试经历回忆录
- 大位图二次采样压缩解决Bitmap OOM
- Java 中的语法糖 (Syntactic Sugar)
- 调用构造函数进行类型转换
- bbossgroups、missian、Hprose等RPC框架介绍
- 如何用DXF文件导入图表和RF多边形
- 常用的CSS属性。备查