目录
题目要求
实现代码
实验结果
题目要求
在上面的数字三角形中寻找一条从顶部到底边的路径,使得路径上所经过的数字之和最大 。路径上的每一步都只能往左下或右下走 。只需要求出这个最大和即可,不必给出具体路径 。
三角形的行数大于1小于等于100,数字为 0-99 。
文章插图
实现代码
#include#include#includeusing namespace std;#define MAX(x,y)(((x)>(y))?(x):(y))const int maxn = 101;int D[maxn][maxn];int n;int maxSum(int i, int j){if(i == n)return D[i][j];int x = maxSum(i+1,j);int y = maxSum(i+1,j+1);return MAX(x,y)+D[i][j];}int main(){cin >> n;for(int i=1; i<=n; i++)for(int j=1; j<=i; j++)cin>>D[i][j];cout<
【数字三角形最大和 动态规划法求解 C语言】实验结果
- Eclipse中SVN无法使用解决方案
- Word如何批量修改数字格式
- 史上最全Azure Kinect相关安装教程
- IDC发布AI训练数据市场分析最新报告
- Flutter最佳架构探究
- 透彻_Prim普里姆算法和Dijkstra迪杰斯特拉算法_最小生成树和最短路径
- 《大数据+AI在大健康领域中最佳实践前瞻》
- 万无一失的OpenMV识别矩形、圆形、三角形方法
- MySQL启/停 登录失败处理功能
- 中国古代饮葡萄酒最好用什么杯子 哪种葡萄酒杯最适合作为各种葡萄酒的品尝杯