南阳oj The Triangle

来源:互联网 发布:经营之道软件攻略 编辑:程序博客网 时间:2024/05/14 17:56

动态规划基础,

从倒数第二排开始往前按照递推公式也就是状态转移方程往前推

i表示行,j表示列

状态转移方程为

C(i,j)=max(C(i+1,j),C(i+1,j+1))


ac代码如下


#include <iostream>#include <memory.h> #include <algorithm>using namespace std;int n;int dp[100][100];int main(){memset(dp,0,sizeof(dp));cin>>n;for(int i=0;i<n;i++){for(int j=0;j<=i;j++){cin>>dp[i][j];}}for(int i=n-2;i>=0;i--){for(int j=0;j<=i;j++){dp[i][j]+=max(dp[i+1][j],dp[i+1][j+1]);}}cout<<dp[0][0]; }