PE 18 Maximum path sum I

本文通过一个具体的示例,展示了如何使用动态规划方法找到三角形网格中的最大路径和。通过从下至上逐步更新每个节点的最大可达值,最终得出根节点的最大路径和为1074。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

#include<iostream>
using namespace std;
int main()
{
	int data[15][15] = {
        {75},
        {95,64},
        {17,47,82},
        {18,35,87,10},
        {20,4,82,47,65},
        {19,1,23,75,3,34},
        {88,2,77,73,7,63,67},
        {99,65,4,28,6,16,70,92},
        {41,41,26,56,83,40,80,70,33},
        {41,48,72,33,47,32,37,16,94,29},
        {53,71,44,65,25,43,91,52,97,51,14},
        {70,11,33,28,77,73,17,78,39,68,17,57},
        {91,71,52,38,17,14,91,43,58,50,27,29,48},
        {63,66,4,68,89,53,67,30,73,16,69,87,40,31},
        {4,62,98,27,23,9,70,98,73,93,38,53,60,4,23,}};
		for(int i=14;i>=0;i--)
		{
			for(int j=0;j<=i-1;j++)
			{
				if(data[i][j]<data[i][j+1])
					data[i-1][j]+=data[i][j+1];
				else
					data[i-1][j]+=data[i][j];
			}
		}
		cout<<data[0][0]<<endl;
		return 0;
}


Answer:
1074

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值