冰水挑战 HDU - 6495
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=6495
题解:DP!!! dp[i][j] 表示前i个挑战,接受了j个剩余的最大体力,最后输出体力大于0的j最大的即可
#include<iostream>
#include<vector>
#include<algorithm>
#include <cstdio>
#include<cmath>
#include<set>
#include<cstring>
#include<string>
#include<iomanip>
#define INF 0x3f3f3f
using namespace std;
typedef long long ll;
const int mod=1e9+;
const int maxn=;
const double PI=acos(-1.0);
ll a[maxn],b[maxn],c[maxn],dp[maxn][maxn];//d[i][j]代表前i个挑战选j个所剩余的最大的体力
int main()
{
int n,m;
int t;
cin >> t;
while(t--)
{
cin >> n >> m;
for(int i = ;i <= n;i ++)
cin >> a[i] >> b[i] >> c[i];
memset(dp,-INF,sizeof(dp));//初始化
dp[][] = m;//初始体力
ll tmp;
for(int i = ;i <= n;i ++)
{
dp[i][]=dp[i-][]+c[i];
for(int j = ;j <= n;j ++)
{
dp[i][j] = dp[i-][j] + c[i];
tmp = min(dp[i-][j-],b[i])-a[i];//每次挑战之前体力取当前体力和b[i]最小的值
if(tmp > )//如果第j个挑战后还有体力
{
dp[i][j] = max (dp[i][j],tmp + c[i]);//该次挑战体力后取最大
}
} }
for(int i = n; i >= ;i --)
{
if(dp[n][i] > )
{
cout << i << endl;break;//如果有找到体力大于0的,该编号就是最大的挑战次数 }
}
}
return ;
}
冰水挑战 HDU - 6495的更多相关文章
- 2050编程赛 冰水挑战 HDU 6495
题目地址:https://vjudge.net/problem/HDU-6495 思路:我们需要维护的是挑战了n个之后剩余体力值,剩余体力值越大越好dp[N(i)][N(j)],第一个维度,记录当前是 ...
- HDU 6495 冰水挑战
Problem Description Polar Bear Pitching helps you crystallize your message. The stage could not be a ...
- hdu 6495 dp
http://acm.hdu.edu.cn/showproblem.php?pid=6495 题意 有n个挑战(1e3),假如接受,在挑战之前体力x会变成min(x,\(b[i]\)),然后会减去a[ ...
- 2050 Programming Competition (CCPC)
Pro&Sol 链接: https://pan.baidu.com/s/17Tt3EPKEQivP2-3OHkYD2A 提取码: wbnu 复制这段内容后打开百度网盘手机App,操作更方便哦 ...
- JS文档和Demo自动化生成工具 - SmartDoc发布
曾几何时,当你码神附体,一路披荆斩棘的完成代码后,带着“一码在手,天下我有”的傲然环顾之时,却发现单元测试.API文档.Demo实例陆续向你砸来,顿时有木有一种冰水挑战后的感觉.而这时你应该:哟哟,快 ...
- 2050 Programming Competition
http://2050.acmclub.cn/contests/contest_show.php?cid=3 开场白 Time Limit: 2000/1000 MS (Java/Others) ...
- hdu 5676 ztr loves lucky numbers
题目链接:hdu 5676 一开始看题还以为和数位dp相关的,后来才发现是搜索题,我手算了下,所有的super lucky number(也就是只含数字4, 7且4, 7的数量相等的数)加起来也不过几 ...
- hdu 3473 Minimum Sum
传送门 之前看挑战的时候看到一道分桶法的题目,其实我不是很明白分桶法应该怎么写.看到poj后面的讨论版上写着划分树裸题,而我以前就听说过了划分树,就干脆拿来学习一下.在写这篇博客的时候,其实我还是对这 ...
- HDU 2059 龟兔赛跑(动态规划)
龟兔赛跑 Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submis ...
随机推荐
- 20145338 《网络对抗》逆向及Bof基础实验
逆向及Bof基础实验 实践目标 ·本次实践的对象是一个名为pwn1的linux可执行文件. ·该程序正常执行流程是:main调用foo函数,foo函数会简单回显任何用户输入的字符串. ·该程序同时包含 ...
- ZABBIX安装过程中relocation error报错解决办法
错误提示: /usr/sbin/zabbix_server: relocation error: /usr/sbin/zabbix_server: symbol mysql_next_result, ...
- oracle问题 ORA-01843:not a valid month
解决思路: 开始解决问题走了些弯路,搜了一些资料,结果大部分说的是修改会话的nls_date_language参数 可是线上正式项目,不能说改就改吧 就找其他方式解决 最终找到问题,to_date() ...
- tomcat中配置ssl的http协议
问题: IDEA配置tomcat后运行时报如下错误: Error running wis-client-web: SSL HTTP Connector node not found: set up o ...
- MyBatis工具类
package cn.word.util; import java.io.IOException;import java.io.InputStream;import java.util.Enumera ...
- 掩码图制作----c语言贴图
1.首先你得有一张图,比如这样的: 2.用PS打开他... 3.左边工具栏里(快速选择工具W),选想显示的部分 4.ctrl+c复制一下,新建一张黑底图粘贴上去或者白底图时选中显示区即花瓣右键反向右键 ...
- Ganlia采样、统计及RRD记录周期(频次、间隔)的配置和更改
Ganglia & RRD Ganglia是伯克利开发的一个集群监控软件.可以监视和显示集群中的节点的各种状态信息,比如如:cpu .mem.硬盘利用率, I/O负载.网络流量情况等,同时可以 ...
- ionic 实现仿苹果手机通讯录搜索功能
前言 由于之前做的SRM移动应用采用的是ionic1.x框架进行开发的,由于性能方便的诟病,导致用户体验不是很友好,于是想着怎么样去提高应用的性能问题.此时刚好ionic3.x框架已发布,由于ioni ...
- js隐藏字符串中间部分
在进行web前端页面开发中,有时需要从后台获取用户数据来显示在前台页面,但是考虑到用户信息安全的问题,就需要对这些信息进行处理,使其不完全显示出来,例如姓名,两个字的显示姓,名字用*代替,电话前三位和 ...
- 最近学习了Sqlite3数据库,写一下操作应用以及命令
首先使用Flask-SQLAlchemy管理数据库 使用pip安装:pip install flask-sqlalchemy 接着要配置数据库,定义模型 关于数据库的操作就不再写了.... 使用Fla ...