有一个特殊的跳跳棋盘,棋盘是一条直线。直线上分布着N个格子,你现在在第1格,想要到达第N格。每个格子上有对应的分数。
你手上有M张卡片,卡片上写有一个数字,数字的范围是1~4,即最多会有4种卡片。若你使用一张卡片,你可以从当前位置往前跳一段距离,距离就是卡片是的数字。每张卡片只能使用一次。当你到达某个格子时,可以获得格子上的分数。
现在你想要合理使用M张卡片,令自己能够获得最大的分数。
有一个特殊的跳跳棋盘,棋盘是一条直线。直线上分布着N个格子,你现在在第1格,想要到达第N格。每个格子上有对应的分数。
你手上有M张卡片,卡片上写有一个数字,数字的范围是1~4,即最多会有4种卡片。若你使用一张卡片,你可以从当前位置往前跳一段距离,距离就是卡片是的数字。每张卡片只能使用一次。当你到达某个格子时,可以获得格子上的分数。
现在你想要合理使用M张卡片,令自己能够获得最大的分数。
第一行输入两个整数N和M,表示棋盘的格子数量和卡片数量。
第二行输入N个非负整数,a[i]表示第i个格子的分数。
第三行输入M个整数,b[i]表示第i张卡片上的数字。
输入保证到达第N格时刚好能够用光M张卡片
9 5
6 10 14 2 8 8 18 5 17
1 3 1 2 1
73