洛谷 题解 P1353 【[USACO08JAN]跑步Running】
动态规划
- 状态
dp[i][j]表示第i分钟疲劳值为j的最大值
- 初始
全部都为一个最小值“0”
- 转移
考虑休息和走
如果当前疲劳值比时间要大,显然不可能出现这种情况
如果比时间小
dp[i][0]=max(dp[i][0],dp[i-j][j]);
还有走的情况
dp[i][0]=max(dp[i-1][j-1]+d[i],dp[i][j]);
- 答案
根据设计的状态不难得出最终的答案为dp[n][0]
完整代码:
#include<bits/stdc++.h>
using namespace std;
const int MAXN=10000+10;
const int MAXM=500+10;
int n,m;
int d[MAXN];
int dp[MAXN][MAXM];
inline int read()
{
int tot=0;
char c=getchar();
while(c<'0'||c>'9')
c=getchar();
while(c>='0'&&c<='9')
{
tot=tot*10+c-'0';
c=getchar();
}
return tot;
}
int main()
{
n=read();m=read();
for(int i=1;i<=n;i++)
d[i]=read();
for(int i=1;i<=n;i++)
{
dp[i][0]=dp[i-1][0];
for(int j=1;j<=m;j++)
{
if(i-j>=0)dp[i][0]=max(dp[i][0],dp[i-j][j]);
dp[i][j]=max(dp[i-1][j-1]+d[i],dp[i][j]);
}
}
cout<<dp[n][0]<<endl;
return 0;
}
洛谷 题解 P1353 【[USACO08JAN]跑步Running】的更多相关文章
- bzoj1613 / P1353 [USACO08JAN]跑步Running
P1353 [USACO08JAN]跑步Running 显然的dp 设$f[i][j]$表示进行到第$i$分钟时,$j$疲劳度下的最远距离,$d[i]$为第$i$分钟下能跑的距离 分类讨论 1.运动: ...
- P1353 [USACO08JAN]跑步Running
题目描述 The cows are trying to become better athletes, so Bessie is running on a track for exactly N (1 ...
- luogu P1353 [USACO08JAN]跑步Running
题目描述 The cows are trying to become better athletes, so Bessie is running on a track for exactly N (1 ...
- 洛谷 题解 P1600 【天天爱跑步】 (NOIP2016)
必须得说,这是一道难题(尤其对于我这样普及组205分的蒟蒻) 提交结果(NOIP2016 天天爱跑步): OJ名 编号 题目 状态 分数 总时间 内存 代码 / 答案文件 提交者 提交时间 Libre ...
- 洛谷 题解 UVA572 【油田 Oil Deposits】
这是我在洛谷上的第一篇题解!!!!!!!! 这个其实很简单的 我是一只卡在了结束条件这里所以一直听取WA声一片,详细解释代码里见 #include<iostream> #include&l ...
- 洛谷题解P4314CPU监控--线段树
题目链接 https://www.luogu.org/problemnew/show/P4314 https://www.lydsy.com/JudgeOnline/problem.php?id=30 ...
- 洛谷P1353 USACO 跑步 Running
题目 一道入门的dp,首先要先看懂题目要求. 容易得出状态\(dp[i][j]\)定义为i时间疲劳度为j所得到的最大距离 有两个坑点,首先疲劳到0仍然可以继续疲劳. 有第一个方程: \(dp[i][0 ...
- 题解【洛谷P1948】[USACO08JAN]电话线Telephone Lines
题面 题解 很显然,答案满足单调性. 因此,可以使用二分答案求解. 考虑\(check\)的实现. 贪心地想,免费的\(k\)对电话线一定都要用上. 每次\(check\)时将小于\(mid\)的边权 ...
- luogu P1353 【[USACO08JAN]跑步Running】
USACO!!! 唉!无一例外又是母牛(终于知道美国的牧场养什么了) 今天的主人公是一个叫贝茜的公主病母牛(好洋气) 可是她叫什么和我们理解题好像没有什么关系 通过读题我们可以发现她有三个傲娇的地方 ...
随机推荐
- python第三方库的更新和安装指定版本
安装指定版本: pip install openpyxl==2.3.4 更新到最新版本: pip install --upgrade openpyxl
- PHP mysqli_dump_debug_info() 函数
mysqli_dump_debug_info() 函数转储调试信息到日志中. <?php mysqli_dump_debug_info($con); ?>
- 【深入学习Redis】Redis内存模型
前言 Redis是目前最火爆的内存数据库之一,通过在内存中读写数据,大大提高了读写速度,可以说Redis是实现网站高并发不可或缺的一部分. 我们使用Redis时,会接触Redis的5种对象类型(字符串 ...
- mkdir/rmdir/install/mktemp
mkdir rmdir很有趣,如果加上p选项,如果删除空目录后,其父目录是空,则一并删除,所以如果都是空的,那么就会全家删 a用户不能修改b用户的文件,但是却可以删除 install 创建文件并赋权 ...
- Noip2011 提高组 选择客栈
P1311 选择客栈 直通 思路: ①看题,我们可以发现一个显然的性质,即当最左边的客栈向右移动时,最右边的客栈时单调向右的,并且右端点往右的客栈也符合要求.(因为只要左侧有一个满足的,右边的自然可以 ...
- 利用chrome devtool 观察页面占用内存
推荐阅读:解决内存问题 1. 任务管理器 我们看看下面这幅图: 内存占用空间:原生内存,Dom节点就是存在原生内存里面的. Javascript使用的内存:代表JS堆内存,我们只需要关心括号里面的值( ...
- 代码审计-Typecho反序列化getshell
0x01 漏洞代码 install.php: <?php $config = unserialize(base64_decode(Typecho_Cookie::get('__typecho_c ...
- Jenkins系统初始化配置
1.点击系统管理-->全局安全配置 2.设置允许用户注册,点击保存 3.配置全局工具 4.配置maven文件路径,使用文件系统中的settings文件 5.配置jdk 6.配置maven 7.我 ...
- 记录Redis连接未正确释放,TCP连接过多,造成服务器上部分功能不可用和linux服务器内存一直增加问题
问题1 多人共享开发服务器(windows系统),我们小组有个程序,定时检测mongodb,redis,mysql连接是否正常,程序启动一段时间后,服务器管理人员找到我们说,我们的某个pid的程序把T ...
- 常见的RSA套路脚本
工具 rsatool https://github.com/ius/rsatool factordb(分解大素数) http://www.factordb.com python-PyCrypto库 O ...