P1216 数字三角形

 

 

 

#include<bits/stdc++.h>
using namespace std;
const int MAX=1001;
int d[MAX][MAX];
int maxsum[MAX][MAX];
int main()
{
    int r;
    cin>>r;
    for(int i=1;i<=r;i++){
        for(int j=1;j<=i;j++){
            cin>>d[i][j];
        }
    }
    for(int i=1;i<=r;i++){
        maxsum[r][i]=d[r][i];
    }
    for(int i=r-1;i>=1;i--){
        for(int j=1;j<=i;j++){
            maxsum[i][j]=max(maxsum[i+1][j],maxsum[i+1][j+1])+d[i][j];
        }
    }
    cout<<maxsum[1][1]<<endl;
    return 0;
}

 

上一篇:window.navigator.userAgent用来区分设备和浏览器


下一篇:elasticsearch mappings之dynamic的三种状态