20240623
描述
超能侠在和朋友玩一个跑步游戏:给定一个n*m个方格组成的矩阵,每个格子中有一个得分(可能为负)。跑步的起点在最后一行的中间位置的下方,一直向前跑越过第一行就到达了终点。但这个游戏的胜负并不以快慢来决定,而是以跑步过程中经过的格子上的分数的和来决定。所以超能侠想找你帮忙,计算出他能获得的最高分数。
注意,虽然分数很重要,但跑步时不能左右摇摆地太厉害,所以每一步都只能跑到上一行正对着当前位置的格子中,或者偏左或偏右一格的格子中。
输入
输入文件第一行给出两个整数n和m,保证m为奇数。
接下来n行为数字矩阵,每行有m个整数,表示每个格子上的分数。
输出
输出文件只有一行一个整数,即能获得的最大得分。
样例
输入
6 7 16 4 3 12 6 0 3 4 -5 6 7 0 0 2 6 0 -1 -2 3 6 8 5 3 4 0 0 -2 7 -1 7 4 0 7 -5 6 0 -1 3 4 12 4 2
输出
41
提示
对于100%的数据,2≤n,m≤200,-100≤分数≤100。