Likecloud—吃、吃、吃(P1508)
题目链接:Likecloud—吃、吃、吃
这题的状态非常的自然。
就是ans[i][j]表示从(i,j)出发,能得到的最大能量值。
那么对应每一个点,我们只要选出他能到达的点的最大值,加上自己就行了。
但要注意两点:
- 刚开始,也有三个选择
- 注意n==1的情况
所以代码就出来了:
#include<bits/stdc++.h>
using namespace std;
int main(){
int n,m;
scanf("%d%d",&m,&n);
int nmap[m][n];
for(int i=0;i<m;i++){
for(int j=0;j<n;j++){
scanf("%d",&nmap[i][j]);
}
}
int ans[m][n];
memset(ans,0xc0,sizeof(ans));
for(int i=0;i<n;i++){
ans[0][i]=nmap[0][i]; //1
}
for(int i=1;i<m;i++){
if(n==1){
ans[i][0]=ans[i-1][0]+nmap[i][0];//2
}else{ //3
ans[i][0]=max(ans[i-1][1],ans[i-1][0])+nmap[i][0];
ans[i][n-1]=max(ans[i-1][n-1],ans[i-1][n-2])+nmap[i][n-1];
}
for(int j=1;j<n-1;j++){ //4
ans[i][j]=max(ans[i-1][j-1],ans[i-1][j])+nmap[i][j];
ans[i][j]=max(ans[i][j],ans[i-1][j+1]+nmap[i][j]);
}
}
if(n==1){
printf("%d",ans[m-1][0]);
}else{ //5
int maxn=max(ans[m-1][n/2],ans[m-1][n/2-1]);
maxn=max(maxn,ans[m-1][n/2+1]);
printf("%d",maxn);
}
return 0;
}
讲5处:
1处:第一行直接复制
2处:如果是n==1,直接一路加起来就行了。
3处:else里放的是每一行两个端点,他们需要特殊处理,因为他们只有两个选择。
4处:对于每一个点,做三种选择。此处会直接把n==1过滤掉(自己想)。
5处:注意,刚开始也有三种选择,所以需要判断,找一个最大值。
Likecloud—吃、吃、吃(P1508)的更多相关文章
- 洛谷 P1508 Likecloud-吃、吃、吃
P1508 Likecloud-吃.吃.吃 题目提供者JosephZheng 标签 动态规划 难度 普及/提高- 题目背景 问世间,青春期为何物? 答曰:"甲亢,甲亢,再甲亢:挨饿,挨饿,再 ...
- 洛谷——P1508 Likecloud-吃、吃、吃
P1508 Likecloud-吃.吃.吃 题目背景 问世间,青春期为何物? 答曰:“甲亢,甲亢,再甲亢:挨饿,挨饿,再挨饿!” 题目描述 正处在某一特定时期之中的李大水牛由于消化系统比较发达,最近一 ...
- 洛谷 P1508 Likecloud-吃、吃、吃 题解
P1508 Likecloud-吃.吃.吃 题目背景 问世间,青春期为何物? 答曰:"甲亢,甲亢,再甲亢:挨饿,挨饿,再挨饿!" 题目描述 正处在某一特定时期之中的李大水牛由于消化 ...
- 洛谷P1508 Likecloud-吃、吃、吃 [2017年4月计划 动态规划10]
P1508 Likecloud-吃.吃.吃 题目背景 问世间,青春期为何物? 答曰:“甲亢,甲亢,再甲亢:挨饿,挨饿,再挨饿!” 题目描述 正处在某一特定时期之中的李大水牛由于消化系统比较发达,最近一 ...
- 【洛谷】【动态规划(二维)】P1508 Likecloud-吃、吃、吃
[题目描述:] 正处在某一特定时期之中的李大水牛由于消化系统比较发达,最近一直处在饥饿的状态中.某日上课,正当他饿得头昏眼花之时,眼前突然闪现出了一个n*m(n and m<=200)的矩型的巨 ...
- VIJOS-P1364 Likecloud-吃、吃、吃
JDOJ 1465: VIJOS-P1364 Likecloud-吃.吃.吃 https://neooj.com/oldoj/problem.php?id=1465 Description ...
- 洛谷P1508 Likecloud-吃、吃、吃
题目背景 问世间,青春期为何物? 答曰:“甲亢,甲亢,再甲亢:挨饿,挨饿,再挨饿!” 题目描述 正处在某一特定时期之中的李大水牛由于消化系统比较发达,最近一直处在饥饿的状态中.某日上课,正当他饿得头昏 ...
- P1508 Likecloud-吃、吃、吃 DP
题目背景 问世间,青春期为何物? 答曰:“甲亢,甲亢,再甲亢:挨饿,挨饿,再挨饿!” 题目描述 正处在某一特定时期之中的李大水牛由于消化系统比较发达,最近一直处在饥饿的状态中.某日上课,正当他饿得头昏 ...
- [LUOGU]P1508 Likecloud-吃、吃、吃
题目背景 问世间,青春期为何物? 答曰:"甲亢,甲亢,再甲亢:挨饿,挨饿,再挨饿!" 题目描述 正处在某一特定时期之中的李大水牛由于消化系统比较发达,最近一直处在饥饿的状态中.某日 ...
随机推荐
- 调css时候,设置margin-left没有效果
调css时候,如果设置margin-left没有效果,可能是span不是块元素.设置display:block;即可.
- WDlinux 修改后台默认8080端口的方法
修改8080端口正确方法 新版本: 方法一: apache sed -i 's/8080/8088/' /www/wdlinux/wdapache/conf/httpd.conf 然后记得修改防火墙i ...
- 如何修改Eclipse的 workspace目录
Eclipse是一款很强的Java IDE, eclipse ide for eclipse committers 这里的committers 就是投稿者与执行者的意思,也就是说这个eclipse是为 ...
- Hudson 打包部署到Was上特别慢
一.找问题点 1.打包很快,到部署很慢 2.部署到其他was一样很慢 二.解决 经过寻找,网上找出以下一段话: 问题出在web.xml,web.xml中的版本信息不对,要根据你的servlet版本和运 ...
- 我的tensorflow学习1
1.神经元被分成了多层,层与层之间的神经元有连接,而层内之间的神经元没有连接.最左边的层叫做输入层,这层负责接收输入数据:最右边的层叫输出层,我们可以从这层获取神经网络输出数据.输入层和输出层之间的层 ...
- java编程 求和
用java编程,实现字符串强制类型转化成整数型,用到Integer.parseInt(),可以把字符串强制转换成整数 结果截图
- vue 给v-html中的元素设置样式
解决方案:写样式的时候添加>>>
- swift - 指定VC隐藏导航栏 - 禁用tabbar的根控制器手势,防止两个tabbar跳转 手势冲突
1. viewdidload 设置代理 self.navigationController?.delegate = self 2.代理里面指定VC 隐藏 //MARK: - 导航栏delegate e ...
- 关于Laravel框架
第1讲-Laravel介绍 1.1 什么是Laravel laravel是目前一个比较主流的框架,现在很多互联网的公司都在使用该框架.该框架的前身是symfony框架 Laravel的定位就是做一个简 ...
- PHP守护进程化
什么是守护进程? 一个守护进程通常补认为是一个不对终端进行控制的后台任务.它有三个很显著的特征:在后台运行,与启动他的进程脱离,无须控制终端.常用的实现方式是fork() -> setsid() ...