HDOJ 2084_大二寫
阿新 • • 發佈:2018-11-05
AC程式碼:
#include <iostream> #include <cstdlib> #include <algorithm> #include <cstdio> #define Max 105 using namespace std; int tree[Max][Max]; int dp[Max][Max]; int main(void) { freopen("in.txt","r",stdin); int C; scanf("%d",&C); while(C--) {int N; scanf("%d",&N); //輸入N for(int i=1; i<=N; i++) //輸入tree的值 for(int j=1; j<=i; j++) scanf("%d",&tree[i][j]); for(int i=1; i<=N; i++) dp[N][i] = tree[N][i]; //給dp的最後一行賦初值 //核心 for(int i=N; i>=1; i--) { for(int j=1;j<=N;j++) { dp[i][j] = tree[i][j] + max(dp[i+1][j],dp[i+1][j+1]); } } printf("%d\n",dp[1][1]); } fclose(stdin); system("pause"); return 0; }