状压dp Survival
来源:互联网 发布:许晴 王雪冰 知乎 编辑:程序博客网 时间:2024/05/29 02:59
题目地址
题目大意:这是关于拳王97游戏的,因为玩过,所以对于题目的理解很顺利!大意就是100HP的初始状态要打败n个人,给出打败每个人要消耗的HP,打败后返还的HP,最后一个BOSS只给出要消耗 的HP,问游戏能否过关
思路:看到玩过的游戏就是亲切啊!!然后也不难,自己做的,然而可能太激动了??WA了三次,不是HP不能过百忽视了,就是字母搞乱了了。。。索性不难,代码也短,终于A了
代码:
#include<iostream>#include<stdio.h>#include<algorithm>#include<string.h>#include<math.h>#include<queue>#include<stack>#include<map>#define inf 0x3f3f3f3fusing namespace std;int N,M,dp[1<<21],a[25],b[25];int main(){ int i,j,k,l; while(~scanf("%d",&N)) { N--; memset(dp,-inf,sizeof(dp)); dp[0]=100; for(i=0;i<N;i++) scanf("%d%d",&a[i],&b[i]); scanf("%d",&M); l=1<<N; for(i=0;i<l;i++) { for(j=0;j<N;j++) { k=(i|(1<<j))-(1<<j); dp[(1<<j|i)]=max(dp[(1<<j|i)],dp[k]<a[j]?(-inf):(dp[k]-a[j]+b[j])); if(dp[(1<<j|i)]>100) dp[1<<j|i]=100; } } if(dp[l-1]>=M) printf("clear!!!\n"); else printf("try again\n"); }}
阅读全文
0 0
- 状压dp Survival
- zoj 2297 Survival 状压dp
- ZOJ Problem Set - 2297 Survival 【状压dp】
- Survival (状态dp)
- ZOJ2297 Survival,压缩状态DP
- ZOJ 2297 Survival (状态dp)
- Survival
- Survival
- ZOJ 2297 Survival 状态压缩DP
- LightOJ1265---Island of Survival (概率dp)
- light oj 1265 - Island of Survival(概率dp)
- LightOJ 1265 Island of Survival(概率DP)
- 7_22_A题 Island of Survival(概率DP)
- 【LightOJ 1265】Island of Survival(概率DP)
- LightOJ 1265 Island of Survival(概率DP)
- LightOJ-1265-Island of Survival (概率dp)
- LightOJ - 1265 Island of Survival 脑洞 概率DP 1月3日
- LIGHTOJ 1265 - Island of Survival [递推|概率dp]【杂类|动态规划】
- LeetCode 477. Total Hamming Distance
- SAP Fiori For iOS
- 自定义view实现无线轮播
- webview
- ShoneSharp语言(S#)的设计和使用介绍系列(4)— 入门概述
- 状压dp Survival
- 通过当前时间获取当前所在周的7天的时间
- Hive的数据模型之视图
- IIS发布网站后出现“处理程序"PageHandlerFactory-Integrated"在其模块列表中有一个错误模块”的解决方法
- 数组逆序功能
- 【Java】学年学期
- Frogger
- 中国大学 MOOC 课程 《Python 语言程序设计》第六周
- 机器学习之决策树01