牛牛准备在一个3行n列的跑道上跑步。一开始牛牛可以自己选择位于(1,1)还是(2,1)还是(3,1)。 跑道的每一格都有一些金币,当牛牛跑到一个格子,他会获得这个格子的所有金币。 当牛牛位于第i行第j列时,他可以的下一步最多可能有三种选择: 1. 不花费金币跑到第i行第j+1列 2. 花费的金币跑到第i-1行第j+1列(如果i=1则不可以这么跑)。 3. 花费的金币跑到第i+1行第j+1列(如果i=3则不可以这么跑)。 (牛牛是一个富豪,本身带了很多的金币,所以你不用担心他钱不够用) 现在告诉你所有格子的金币数量和每一列的金币花费,牛牛想知道他跑到第n列最多可以赚得多少金币(赚得金币=获得金币-消耗金币)
示例1

输入

3,[1,9,3],[6,4,6],[1,1,5],[3,2,1]

输出

16

说明

一开始牛牛选择位于第2行第1列,拿到6个金币。然后牛牛花3金币到第1行的2列拿到9个金币,最后牛牛花费2金币到第2行第3列。总共获得21金币,消耗5金币。赚得16金币。

备注:
第1个参数n代表跑道的列数第2,3,4个参数vector a1,a2,a3各有n个元素,代表第1,2,3行每一列的金币个数第5个参数vector m有n个元素代表每一列进行换行的时候需要的金币花费
加载中...