hdu 3217 Health
来源:互联网 发布:手机辐射软件下载 编辑:程序博客网 时间:2024/04/30 01:53
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=3217
本题是一道状态压缩DP,题目意思很简单,就是说有n种药,为了治病可以搭配着吃,每种告诉你各种搭配及每种搭配能起到了治疗功效,当选择某种搭配的时候他的所有子搭配(即搭配的子集)的功效和就是最终效果,求给处的所有搭配的最大最终效果。
代码如下:
#include <iostream>#include <cstdio>using namespace std;const int maxn=1<<17;int dp[17][maxn];int max(int a,int b){return a>b?a:b;}int main(){int n,m,i,j;while(scanf("%d",&n)&&n){scanf("%d",&m);memset(dp,0,sizeof(dp));int s,e;for(int i=0;i<m;i++){ scanf("%d%d",&s,&e); dp[0][s]=e; } for(i=1;i<=n;i++){ for(j=0;j<maxn;j++){ if(j&(1<<(i-1))){ dp[i][j]=dp[i-1][j]+dp[i-1][j-(1<<(i-1))]; }else { dp[i][j]=dp[i-1][j]; } } }int ans=-1<<30; for(i=0; i<(1<<n);i++) { ans = max(ans, dp[n][i]); }printf("%d\n",ans);}return 0;}
- hdu 3217 Health
- HDU 3217 Health(状压DP)
- Health
- Health
- Health
- health
- HEALTH
- For health
- health blog
- health club
- mental health
- health insurance
- health food
- womens health
- man health
- health care
- health check
- Health Manager
- ibatis例子(四) iterate 2
- Weblogic(一)简介
- 最近学习计划
- 实现Mysql的远程登录
- 计算机类研究生求职经历以及经验共享(转)
- hdu 3217 Health
- hdu 3998(DP+最大流)
- 杂谈测试这东西
- 安装oracle客户端,配置pl/sql developer
- 一个游戏程序员的学习资料
- 求给定值范围内的所有完数
- 【专题】关于敏捷测试,我们到底知道多少?
- string和wstring
- (原文)Effective C++条款7:为多态基类声明VIRTUAL析构函数