HDU_5045_状态压缩dp
http://acm.hdu.edu.cn/showproblem.php?pid=5045
i从1到m依次更新,dp[i][j]表示更新到i题时,j表示每个人的答题状态,分别用0和1表示(因为每个人相差题数不能超过1),此是为1的人便不能再答题,当所有人都为1的时候,则每个人都置0。
#include<iostream>
#include<cstring>
#include<cstdio>
using namespace std; double a[][],dp[][<<];
int n,m; int main()
{
int T;
scanf("%d",&T);
for(int x = ;x <= T;x++)
{
scanf("%d%d",&n,&m);
for(int i = ;i <= m;i++)
{
for(int j = ;j < (<<n);j++) dp[i][j] = -;
}
for(int i = ;i <= n;i++)
{
for(int j = ;j <= m;j++) scanf("%lf",&a[i][j]);
}
dp[][] = ;
for(int i = ;i < m;i++)
{
for(int j = ;j < (<<n);j++)
{
if(dp[i][j] < ) continue;
for(int k = ;k <= n;k++)
{
if((j & (<<(k-))) == )
{
int temp = j | (<<(k-));
if(temp == (<<n)-) temp = ;
dp[i+][temp] = max(dp[i+][temp],dp[i][j]+a[k][i+]);
}
}
}
}
double ans = -;
for(int i = ;i < (<<n);i++) ans = max(ans,dp[m][i]);
printf("Case #%d: %.5f\n",x,ans);
}
return ;
}
HDU_5045_状态压缩dp的更多相关文章
- hoj2662 状态压缩dp
		
Pieces Assignment My Tags (Edit) Source : zhouguyue Time limit : 1 sec Memory limit : 64 M S ...
 - POJ 3254 Corn Fields(状态压缩DP)
		
Corn Fields Time Limit: 2000MS Memory Limit: 65536K Total Submissions: 4739 Accepted: 2506 Descr ...
 - [知识点]状态压缩DP
		
// 此博文为迁移而来,写于2015年7月15日,不代表本人现在的观点与看法.原始地址:http://blog.sina.com.cn/s/blog_6022c4720102w6jf.html 1.前 ...
 - HDU-4529 郑厂长系列故事——N骑士问题 状态压缩DP
		
题意:给定一个合法的八皇后棋盘,现在给定1-10个骑士,问这些骑士不能够相互攻击的拜访方式有多少种. 分析:一开始想着搜索写,发现该题和八皇后不同,八皇后每一行只能够摆放一个棋子,因此搜索收敛的很快, ...
 - DP大作战—状态压缩dp
		
题目描述 阿姆斯特朗回旋加速式阿姆斯特朗炮是一种非常厉害的武器,这种武器可以毁灭自身同行同列两个单位范围内的所有其他单位(其实就是十字型),听起来比红警里面的法国巨炮可是厉害多了.现在,零崎要在地图上 ...
 - 状态压缩dp问题
		
问题:Ignatius has just come back school from the 30th ACM/ICPC. Now he has a lot of homework to do. Ev ...
 - BZOJ-1226     学校食堂Dining       状态压缩DP
		
1226: [SDOI2009]学校食堂Dining Time Limit: 10 Sec Memory Limit: 259 MB Submit: 588 Solved: 360 [Submit][ ...
 - Marriage Ceremonies(状态压缩dp)
		
Marriage Ceremonies Time Limit:2000MS Memory Limit:32768KB 64bit IO Format:%lld & %llu ...
 - HDU 1074 (状态压缩DP)
		
题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=1074 题目大意:有N个作业(N<=15),每个作业需耗时,有一个截止期限.超期多少天就要扣多少 ...
 
随机推荐
- 12款好用的Visual Studio插件,最后一款良心推荐
			
目录 01 CodeMaid 02 Markdown Editor 03 ReSharper 04 GitHub Extension for Visual Studio 05 ZenCoding 06 ...
 - Shell脚本实现DB2数据库表导出到文件
			
该Shell脚本用于实现将DB2数据库表导出到文件,将在另一篇博文<Java代码调用Shell脚本并传入参数实现DB2数据库表导出到文件>中通过Java代码实现调用该脚本并传入参数. #! ...
 - echarts设置数据在轴线上显示
			
项目中遇到数据需要在右侧显示,如图,直接上代码: 1.需要在哪个轴上显示 就把那个轴写成一个数组 2.分别设置一下定位和数据即可(如下图红色部分) yAxis: [ { type: 'categor ...
 - 【DPDK】【CPU usage】DPDK应用如何计算当前系统的压力
			
[前言] 使用DPDK开发的朋友应该都了解使用dpdk的fwd线程的工作模式是polling模式,即100%轮询的方式去加速网络IO,这样我们在操作系统层面上来观察目标processer会发现usag ...
 - 使用内存映射文件MMF实现大数据量导出时的内存优化
			
前言 导出功能几乎是所有应用系统必不可少功能,今天我们来谈一谈,如何使用内存映射文件MMF进行内存优化,本文重点介绍使用方法,相关原理可以参考文末的连接 实现 我们以单次导出一个excel举例(csv ...
 - python之对象回收机制
			
python中,当程序执行完毕之后,python的垃圾回收机制就会将所有对象回收,清除占用的内存 请看如下代码 class Parent(): def __init__(self,name): sel ...
 - 求二叉树的深度,从根节点到叶子节点的最大值,以及最大路径(python代码实现)
			
首先定义一个节点类,包含三个成员变量,分别是节点值,左指针,右指针,如下代码所示: class Node(object): def __init__(self, value): self.value ...
 - 【转】KAFKA分布式消息系统
			
Kafka[1]是linkedin用于日志处理的分布式消息队列,linkedin的日志数据容量大,但对可靠性要求不高,其日志数据主要包括用户行为(登录.浏览.点击.分享.喜欢)以及系统运行日志(CPU ...
 - Nginx模块讲解
			
Nginx模块分为:nginx官方模块.第三方模块 通过nginx -V查看编译参数,可以看到官方编译的模块 --with-compat --with-file-aio --with-threads ...
 - Java.Json模板.省市区三级JSON
			
[ { "name": "北京市", "city": [ { "name": "北京市", &quo ...