题目链接:
CODE【VS】1068 乌龟棋

题目描述 Description
小明过生日的时候,爸爸送给他一副乌龟棋当作礼物。 乌龟棋的棋盘是一行N个格子,每个格子上一个分数(非负整数)。棋盘第1格是唯一 的起点,第N格是终点,游戏要求玩家控制一个乌龟棋子从起点出发走到终点。
…… 1 2 3 4 5 ……N 乌龟棋中M张爬行卡片,分成4种不同的类型(M张卡片中不一定包含所有4种类型 的卡片,见样例),每种类型的卡片上分别标有1、2、3、4四个数字之一,表示使用这种卡 片后,乌龟棋子将向前爬行相应的格子数。游戏中,玩家每次需要从所有的爬行卡片中选择 一张之前没有使用过的爬行卡片,控制乌龟棋子前进相应的格子数,每张卡片只能使用一次。 游戏中,乌龟棋子自动获得起点格子的分数,并且在后续的爬行中每到达一个格子,就得到 该格子相应的分数。玩家最终游戏得分就是乌龟棋子从起点到终点过程中到过的所有格子的 分数总和。 很明显,用不同的爬行卡片使用顺序会使得最终游戏的得分不同,小明想要找到一种卡 片使用顺序使得最终游戏得分最多。 现在,告诉你棋盘上每个格子的分数和所有的爬行卡片,你能告诉小明,他最多能得到 多少分吗?
简要概括:
有4种卡片(走法),每次可以在有卡片时候走相应步,使经过的点的权值最大。题目保证用完所有卡片刚好到终点。

样例输入 Sample Input
13 8
4 96 10 64 55 13 94 53 5 24 89 8 30
1 1 1 1 1 2 4 1
样例输出 Sample Output
455
数据范围及提示 Data Size & Hint
【数据范围】
对于100%的数据有1 ≤ N≤ 350,1 ≤M≤ 120,且4 种爬行卡片,每种卡片的张数不会超过40;0 ≤ ai ≤ 100,1 ≤ i ≤ N;1 ≤ bi ≤ 4,1 ≤ i ≤M。输入数据保证N−1=ΣMi b(恰能到终点)

开始看这道题的时候蒙圈了。。。。
//四维dp,dp[i][j][k][l]:表示使用i,j,k,l张标有1,2,3,4的卡片能得到的最高分数
//—————————想不到,,看了题解—————–
//状态转移方程:
//dp[t][i][j][k] = max(dp[t-1][i][j][k], dp[t][i-1][j][k], dp[t][i][j-1][k], dp[t][i][j][k-1]) + a[1*t+2*i+3*j+4*k];
有4种爬行卡片,每种爬行卡片只有40张,于是我们就开数组f[41][41][41][41],其中f[a][b][c][d]代表使用a张1,b张2,c张3,d张4所能获得的最大分数,枚举每张牌的个数就行了

#include<iostream>
#include<stdio.h>
#include<cstring>
#include<cstdlib>
#include<algorithm>
#define LL long long
using namespace std;
const int N = 50086;int dp[41][41][41][41];
int mov[5] = {1, 1, 1, 1, 1};
int a[400];
int main()
{int n, m;scanf("%d%d", &n, &m);for(int i = 1; i <= n; i++) scanf("%d", &a[i]);for(int j = 1; j <= m; j++) {int x; scanf("%d", &x); mov[x]++;}for(int i = 1; i <= mov[1]; i++)for(int j = 1; j <= mov[2]; j++)for(int k = 1; k <= mov[3]; k++)for(int l = 1; l <= mov[4]; l++)dp[i][j][k][l] = a[i-1+2*j-2+3*k-3+4*l-4+1] + max(dp[i][j][k][l-1], max(dp[i][j][k-1][l], max(dp[i][j-1][k][l],dp[i-1][j][k][l])));  printf("%d\n", dp[mov[1]][mov[2]][mov[3]][mov[4]]);return 0;
}

CODE[VS] 1068 乌龟棋相关推荐

  1. 【NOIP2010】【P1317】乌龟棋

    似乎很像搜索的DP(应该也可以用搜索写) 原题: 小明过生日的时候,爸爸送给他一副乌龟棋当作礼物. 乌龟棋的棋盘是一行N 个格子,每个格子上一个分数(非负整数).棋盘第1格是唯一的起点,第N 格是终点 ...

  2. P1541 乌龟棋 题解(洛谷,动态规划递推)

    题目:P1541 乌龟棋 感谢大神的题解(他的写的特别好) 写一下我对他的代码的理解吧(哎,蒟蒻就这能这样...) 代码: #include<bits/stdc++.h> #define ...

  3. 【每日DP】day6 P1541 乌龟棋(四维DP)难度⭐⭐⭐

    P1541 乌龟棋 四维DP--四种状态,所以四维DP f[i][j][k][l]f[i][j][k][l]f[i][j][k][l]:表示牌号分别为1,2,3,4,的时候用了i,j,k,l张牌 思路 ...

  4. AcWing 312. 乌龟棋

    小明过生日的时候,爸爸送给他一副乌龟棋当作礼物. 乌龟棋的棋盘只有一行,该行有 N 个格子,每个格子上一个分数(非负整数). 棋盘第 1 格是唯一的起点,第 N 格是终点,游戏要求玩家控制一个乌龟棋子 ...

  5. 牛客网 【每日一题】7月27日题目精讲—乌龟棋

    来源:牛客网: 乌龟棋 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 131072K,其他语言262144K 64bit IO Format: %lld 文章目录 乌龟棋 题目描述 ...

  6. CJOJ 1087 【NOIP2010】乌龟棋 / Luogu 1541 乌龟棋(动态规划)

    CJOJ 1087 [NOIP2010]乌龟棋 / Luogu 1541 乌龟棋(动态规划) Description 小明过生日的时候,爸爸送给他一副乌龟棋当作礼物. 乌龟棋的棋盘是一行N个格子,每个 ...

  7. 【codevs1068】乌龟棋noip10年TG----第二个A掉的钻石题

    题目描述 Description 小明过生日的时候,爸爸送给他一副乌龟棋当作礼物. 乌龟棋的棋盘是一行N个格子,每个格子上一个分数(非负整数).棋盘第1格是唯一 的起点,第N格是终点,游戏要求玩家控制 ...

  8. noip2010乌龟棋解题报告

    乌龟棋解题报告 题目描述 Description 小明过生日的时候,爸爸送给他一副乌龟棋当作礼物. 乌龟棋的棋盘是一行N个格子,每个格子上一个分数(非负整数).棋盘第1格是唯一 的起点,第N格是终点, ...

  9. codevs1068 乌龟棋 题解

    题目描述 Description 小明过生日的时候,爸爸送给他一副乌龟棋当作礼物. 乌龟棋的棋盘是一行N个格子,每个格子上一个分数(非负整数).棋盘第1格是唯一 的起点,第N格是终点,游戏要求玩家控制 ...

最新文章

  1. 今日头条新员工哀叹:要抑郁了!入职没人带,需求不知道,名词不解,测试去哪儿不知道!...
  2. Windows 2003 标准版_企业版_SP1_SP2_R2的区别
  3. Oulipo(kmp算法)
  4. 你有一个向LiveVideoStackCon讲师提问的机会
  5. SDUT OJ -2892 A
  6. uap--studio设置文本字体
  7. Spring Boot 2.3.3 稳定版发布!修复了这18个Bug!!
  8. 直击微信公开课:2019年小程序将会有哪些改变?
  9. 7-2 通讯录的录入与显示 (10 分)
  10. Lanproxy任意文件读取漏洞复现(CVE-2021-3019)
  11. word文字校对工具_如何在Word中使用校对面板
  12. HTML基础学习(全)
  13. 博途PLC如何通过FB285实现V90 PN的速度控制
  14. 树莓派——4G网卡华为ME909s-821 4G上网及开机自启动(1)
  15. Python Pymysql实现数据存储
  16. 网络安全认证与加密协议算法整合
  17. python 爬取漫画《黑鹭尸体宅配便》
  18. android修改图片(修改图片大小,图片旋转,图片平移)
  19. 电脑上的软件卸载不了怎么办
  20. ZYNQ - 嵌入式Linux开发 -05- Linux C编程和Makefile

热门文章

  1. 云服务器宕机服务器Nginx,Tomcat等服务无法访问解决方法
  2. 二元函数对xy同时求导_第二章 导数与微分 隐函数及参数方程确定的函数的导数...
  3. JQuery 正则表达式
  4. 计算机系统结构 office,第1章 计算机基础知识免费阅读_大学计算机基础教程(Windows 7 + Office 2010)免费全文_百度阅读...
  5. 图说区块链 读书笔记
  6. VC++6.0在Win11下无法运行
  7. js实现椭圆轨迹_【CSON原创】javascript椭圆旋转相册发布
  8. Shopee先店铺该如何选取比较适合我们的产品,这四点你要知道
  9. 使用科汛系统的安全小常识
  10. Windows OpenGL 图像单色