POJ 3176(動態規劃:數塔問題)
阿新 • • 發佈:2019-01-24
數塔問題,比較基礎。
#include<iostream> #include<cstdio> #include<algorithm> using namespace std; const int INF=0x3f3f3f3f; const int maxn=400; int n; int a[maxn][maxn]; int main(){ #ifndef ONLINE_JUDGE freopen("test.in","r",stdin); freopen("test.out","w",stdout); #endif while(~scanf("%d",&n)){ memset(a,0,sizeof(a)); for(int i=1;i<=n;i++){ for(int j=1;j<=i;j++){ scanf("%d",&a[i][j]); } } for(int i=n;i>=1;i--){ for(int j=1;j<=i;j++){ a[i][j]=max(a[i+1][j],a[i+1][j+1])+a[i][j]; } } printf("%d\n",a[1][1]); } return 0; }