题目名称 519. [NOIP 2010]乌龟棋
输入输出 tortoise.in/out
难度等级 ★★
时间限制 1000 ms (1 s)
内存限制 128 MiB
测试数据 10
题目来源 GravatarPom 于2010-12-17加入
开放分组 全部用户
提交状态
分类标签
NOIP/CSP 动态规划 博弈论
分享题解
通过:412, 提交:689, 通过率:59.8%
GravatarRegnig Etalsnart 100 0.000 s 0.00 MiB C++
Gravatarsywgz 100 0.000 s 0.00 MiB C++
Gravatardateri 100 0.000 s 3.32 MiB C++
Gravatar超人 100 0.001 s 1.49 MiB C++
GravatarHyoi_0Koto 100 0.002 s 3.02 MiB C++
Gravatarcy 100 0.002 s 3.32 MiB C++
Gravatar@@@ 100 0.002 s 11.09 MiB C++
Gravatar龙征天 100 0.004 s 2.22 MiB C++
Gravatar┭┮﹏┭┮ 100 0.004 s 7.66 MiB C++
Gravatarsyzhaoss 100 0.005 s 3.61 MiB C++
本题关联比赛
防止颓废的小练习v0.2
防止isaac的小练习day1
专项训练十题
noip2010提高组
练习赛
20231212_2010联赛题复现
关于 乌龟棋 的近10条评论(全部评论)
魔幻的做题过程
GravatarJustWB
2017-09-11 18:49 14楼
我竟然把加号打成了逗号
Gravatar+1s
2017-02-17 08:46 13楼
Gravatar+1s
2017-02-16 16:20 12楼
........
Gravatar+1s
2017-02-16 16:19 11楼
唛疯新境界
Gravatar_Itachi
2016-09-11 14:56 10楼
set果断被卡,改掉状态定义就一遍过= =
GravatarAntiLeaf
2016-09-11 14:19 9楼
考试前5个月做的题= =
GravatarYGOI_真神名曰驴蛋蛋
2016-09-11 11:20 8楼
看错了样例,调了好久。。。
GravatarJanis
2016-07-17 19:37 7楼
看成50%范围E不断。。
Gravatarliu_runda
2016-04-12 06:36 6楼
小可公式如下,初三2小时一遍过
GravatarFoolMike
2014-11-01 21:28 5楼

519. [NOIP 2010]乌龟棋

★★   输入文件:tortoise.in   输出文件:tortoise.out   简单对比
时间限制:1 s   内存限制:128 MiB

【问题描述】

小明过生日的时候,爸爸送给他一副乌龟棋当作礼物。

乌龟棋的棋盘是一行$N$个格子,每个格子上一个分数(非负整数)。棋盘第$1$格是唯一的起点,第$N$格是终点,游戏要求玩家控制一个乌龟棋子从起点出发走到终点。

1 2 3 4 5……N

乌龟棋中$M$张爬行卡片,分成4种不同的类型($M$张卡片中不一定包含所有4种类型的卡片,见样例),每种类型的卡片上分别标有1、2、3、4四个数字之一,表示使用这种卡片后,乌龟棋子将向前爬行相应的格子数。游戏中,玩家每次需要从所有的爬行卡片中选择一张之前没有使用过的爬行卡片,控制乌龟棋子前进相应的格子数,每张卡片只能使用一次。

游戏中,乌龟棋子自动获得起点格子的分数,并且在后续的爬行中每到达一个格子,就得到该格子相应的分数。玩家最终游戏得分就是乌龟棋子从起点到终点过程中到过的所有格子的分数总和。

很明显,用不同的爬行卡片使用顺序会使得最终游戏的得分不同,小明想要找到一种卡片使用顺序使得最终游戏得分最多。

现在,告诉你棋盘上每个格子的分数和所有的爬行卡片,你能告诉小明,他最多能得到多少分吗?

【输入格式】

输入的每行中两个数之间用一个空格隔开。

第1行2个正整数$N$和$M$,分别表示棋盘格子数和爬行卡片数。

第2行$N$个非负整数,$a_1, a_2,\cdots, a_N$,其中$a_i$表示棋盘第$i$个格子上的分数。

第3行$M$个整数,$b_1,b_2,\cdots, b_M$,表示$M$张爬行卡片上的数字。

输入数据保证到达终点时刚好用光$M$张爬行卡片。

【输出格式】

输出只有1行,1个整数,表示小明最多能得到的分数。

【输入样例1】

9 5
6 10 14 2 8 8 18 5 17
1 3 1 2 1

【输出样例1】

73

【输入输出样例1说明】

小明使用爬行卡片顺序为1,1,3,1,2,得到的分数为6+10+14+8+18+17=73。注意,

由于起点是1,所以自动获得第1格的分数6。

【输入样例2】

13 8
4 96 10 64 55 13 94 53 5 24 89 8 30
1 1 1 1 1 2 4 1

【输出样例2】

455

【数据范围】

对于30%的数据有$1≤N≤30,1≤M≤12$。

对于50%的数据有$1≤N≤120,1≤M≤50$,且4种爬行卡片,每种卡片的张数不会超过20。

对于100%的数据有$1≤N≤350,1≤M≤120$,且4种爬行卡片,每种卡片的张数不会超过40;$0≤a_i≤100,1≤i≤N;1≤b_i≤4,1≤i≤M$。