码迷,mamicode.com
首页 > 其他好文 > 详细

POJ-1163-The Triangle

时间:2019-04-01 01:10:49      阅读:132      评论:0      收藏:0      [点我收藏+]

标签:string   tps   ace   main   cpp   space   int   最大   iterator   

链接:https://vjudge.net/problem/POJ-1163

题意:

给一个三角形,每次只能从点往下一层左边或者右边走。

求走到最下面一层能得到的最大值。

思路:

dp,每个位置是上方左右中较大的值加上自己。

代码:

#include <iostream>
#include <memory.h>
#include <vector>
#include <map>
#include <algorithm>
#include <cstdio>
#include <math.h>
#include <queue>
#include <string>
#include <stack>
#include <iterator>

using namespace std;

typedef long long LL;

const int MAXN = 100 + 10;

int a[MAXN][MAXN];

int main()
{
    int n;
    cin >> n;
    for (int i = 1;i <= n;i++)
    {
        for (int j = 1;j <= i;j++)
            cin >> a[i][j];
    }
    int res = 0;
    for (int i = 1;i <= n;i++)
        for (int j = 1;j <= i;j++)
        {
            a[i][j] += max(a[i - 1][j], a[i - 1][j - 1]);
            res = max(res, a[i][j]);
        }
    cout << res << endl;

    return 0;
}

  

POJ-1163-The Triangle

标签:string   tps   ace   main   cpp   space   int   最大   iterator   

原文地址:https://www.cnblogs.com/YDDDD/p/10634053.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!