博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
uva 11825 Hackers' Crackdown (状压dp,子集枚举)
阅读量:6232 次
发布时间:2019-06-21

本文共 428 字,大约阅读时间需要 1 分钟。

题目链接:

题意:

你是一个黑客,侵入了n台计算机(每台计算机有同样的n种服务),对每台计算机,你能够选择终止一项服务,则他与其相邻的这项服务都终止。你的目标是让很多其它的服务瘫痪(没有计算机有该项服务)。

思路:(见大白70页,我的方程与大白不同)

把n个集合P1、P2、Pn分成尽量多的组,使得每组中全部集合的并集等于全集,这里的集合Pi是计算机i及其相邻计算机的集合,用cover[i]表示若干Pi的集合S中全部集合的并集,dp[s]表示子集s最多能够分成多少组,则

假设cover[s]=all,那么dp[s]至少为1.

dp[s]=max(dp[s],dp[s0]+dp[s^s0]);  (两个子集的和)

代码:

#include 
#include
#include
#define N 16using namespace std;int n, m, x, dp[1<

转载地址:http://lctna.baihongyu.com/

你可能感兴趣的文章
SpringMVC源码总结(八)类型转换PropertyEditor的背后
查看>>
WampServer中Apache使用FastCGI模式跑PHP5.3nts版
查看>>
Oracle查询表空间使用情况
查看>>
自定义Django命令
查看>>
Redis及其安装配置
查看>>
XCODE 6.1 创建新白空应用
查看>>
Mac下查看端口占用
查看>>
DB2 启用QUIESCE模式
查看>>
C Primer Plus 第8章 字符输入/输出和输入确认 8.3 重定向和文件
查看>>
20160215--新的一年,新的起点。加油!
查看>>
使用class-validator替换Joi包的方法
查看>>
Android 实现类似考试座号表效果
查看>>
MySQL启动与停止[Linux]
查看>>
Go实现FastCgi Proxy Client 系列(四) keep-alive实现
查看>>
程序员必备神器
查看>>
解析:Parallels给Mac电脑带来的好处
查看>>
skycc淘宝客推广软件 V8.2免费版
查看>>
Navicat for MySQL 11 Mac安装教程
查看>>
Navicat 如何调整栏位结构
查看>>
食品安全溯源区块链解决方案探索
查看>>