【C/C++】金币
2024-10-16 08:07:01
做了一下去年的题目,今年看起来就没这么难了
从上到下的可以从下到上考虑,会简单很多,dp入门
题目 金币
小招在玩一款游戏,在一个N层高的金字塔上,以金字塔顶为第一层,第i层有i个落点,每个落点有若干金币,在落点可以往向下或右斜向下移动,问能获得的最大金币值。
其实也没啥好说的,就是动态规划数塔问题,从第N层塔往上走比较好算。
样例输入
5
8
3 8
8 1 0
4 7 5 4
3 5 2 6 5
输出
31
#include <bits/stdc++.h>
using namespace std;
const int maxn = 1010;
int dp[maxn][maxn];
int data[maxn][maxn];
int main()
{
memset(data, 0, sizeof(data));
memset(dp, 0, sizeof(data));
int n;
scanf("%d", &n);
for (int i = 1; i <= n; i++ )
{
for (int j = 1; j <= i; j++)
{
scanf("%d", &data[i][j]);
}
}
// 边界
for (int i = n; i>=1; i--)
{
for (int j = 1; j <= i; j++)
{
dp[i][j] = data[i][j] + max(dp[i+1][j], dp[i+1][j+1]);
}
}
cout << dp[1][1] << endl;
system("pause");
}
最新文章
- luogg_java学习_06_面向对象特性之封装和继承
- Java for LeetCode 212 Word Search II
- java在url传输前更改字符编码
- Apache Spark源码走读之2 -- Job的提交与运行
- 六、Struts2的配置文件
- JAVA基础--toString, equals方法
- Elasticsearch与Solr
- redis客户端连接服务端the version of redis server is too low to support this function错误
- J-Robot,能走、能跳舞的机器人
- Wcf传递的参数实际不为空,但是接收时显示为空。
- dm_analysis
- 几种优化方法的整理(SGD,Adagrad,Adadelta,Adam)
- 修改ip导致服务不可用
- Python基础之白话说函数
- Altium 拼板方法以及 注意的 地方
- 一步一步 Pwn RouterOS之exploit构造
- php使用curl库进行ssl双向认证
- poj_3159 最短路
- 【BZOJ1412】[ZJOI2009]狼和羊的故事 最小割
- KD树的极简单笔记(待后续更新)