APCS202010 第3題勇者修煉

輸入為 m×n 大小的的陣列,每一格是一個介於 -100 與 100 之間的整數,表示經過這格可以累積的經驗值。 你可以從最上面一排任何一個位置開始,在最下面一排任何一個位置結束。 過程中每一步可以選擇往左、往右或往下走,但不能走回已經經過的位置。 請你算出最多可以獲得的經驗值總和(可能是負數)。


輸入說明

第一行有兩個正整數 m,n(1≤m≤50,1≤n≤10000) 接下來 m 行,每行包含 n 個整數。第 i 行的第 j 個數字表示在 (i,j) 位置可以得到的經驗值。

輸出說明

輸出可以獲得的最多經驗值總和。

輸入範例

1 5

2 1 4 -7 4

輸出範例

7


解題策略

DP

dp[][][0]從上到下,dp[][][1]從左到右,dp[][][2]從右到左