poj 3176(杨辉三角最大值序列)
#include<iostream> using namespace std; const int maxn = 355; int n,data[maxn][maxn],dp[maxn]; int main(){ cin>>n; for(int i=1;i<=n;i++){ for(int j=1;j<=i;j++){ cin>>data[i][j]; } } for(int i=n;i>0;i--){ dp[i] = data[n][i]; } for(int i=n-1;i>0;i--){ for(int j=0;j<=i;j++){ dp[j] = data[i][j]+max(dp[j],dp[j+1]); } } cout<<dp[1]<<endl; return 0; }

浙公网安备 33010602011771号