给定一个N列M行的矩阵,这个矩阵中的每一个单元格中都有一个数字。你需要从这个矩阵的第一行一直移动到最后一行,每一次移动只能从上一行的单元格中移动到该单元格下一行的左下、下、右下单元格,不能跨行、跨列也不能回头。每移动到一个单元格你就能获得与该单元格中所填数字相同的奖励,但要注意你需要避开数字为 -1的单元格,否则游戏结束。请问你最多能够获得多少奖励?
输入数据有若干行。
第一行为两个整数N、M。
接下来的M行,每一行有N个数,数的范围是正整数或 -1,表示给定的矩阵。
输出数据为一行一个整数,代表你所能获得的最多的奖励。
3 5 5 1 3 -1 7 -1 5 1 10 4 -1 7 20 10 5
41
【样例解释】
如下图。
【数据规模与约定】
对于40%的数据1≤N≤1000、1≤M≤1000
对于100%的数据 1≤N≤1000、1≤M≤10000
时间限制 | 1 秒 |
内存限制 | 256 MB |