POJ 1163 C++:The Triangle

来源:互联网 发布:淘宝付了定金已下架 编辑:程序博客网 时间:2024/05/23 16:54

解题思路:

简单的动态规划题,思路就是从下往上遍历数组,从倒数第二行开始更新数组的值,每次取最大的和,最后输出a[0][0] 即可
#include <stdio.h>#include <iostream>int max(int a,int b){if(a>b)return a;else return b;}using namespace std;int a[105][105];int main(){int n;cin>>n;int i,j;for(i=0;i<n;i++){for(j=0;j<=i;j++){cin>>a[i][j];}}for(i=n-2;i>=0;i--){for(j=0;j<i+1;j++){a[i][j]=a[i][j]+max(a[i+1][j],a[i+1][j+1]);}}cout<<a[0][0]<<endl;}


0 0