poj 3176 1163【动态规划】【入门】

来源:互联网 发布:内网端口号干嘛用 编辑:程序博客网 时间:2024/05/23 12:01

典型动态规划入门问题。

状态转移方程为

dp[i][j]=p[i][j]+max{dp[i+1][j],dp[i+1][j+1]}

#include<stdio.h>#define M 110#define max(a,b) a>b?a:bint dp[M][M];int main(){int n;scanf("%d",&n);for(int i=1; i<=n; i++){//getchar();for(int j=1; j<=i; j++){scanf("%d",&dp[i][j]);}}for(int i=n-1; i>=1; i--){for(int j=1; j<=i; j++){dp[i][j] += max(dp[i+1][j],dp[i+1][j+1]);}}printf("%d\n",dp[1][1]);return 1;}

原创粉丝点击