当前位置: 首页 > news >正文

蓝桥杯刷题-乌龟棋

312. 乌龟棋 - AcWing题库

/*  状态表示:f[b1,b2,b3,b4]表示所有第 i种卡片使用了 bi张的走法的最大分值。状态计算:将 f[b1,b2,b3,b4]表示的所有走法按最后一步选择哪张卡片分成四类:第 i类为最后一步选择第 i种卡片。比如 i=2,则这一类的最大分值是 f[b1,b2−1,b3,b4]+score[b1+2b2+3b3+4b4]
*/
#include <cstdio>
#include <cstring>
#include <iostream>
#include <algorithm>using namespace std;const int N = 360, M = 41;int n, m;
int score[N];
int f[M][M][M][M];int main()
{int b[5] = {0};scanf("%d%d", &n, &m);for (int i = 0; i < n; i ++ ) scanf("%d", &score[i]);for (int i = 0; i < m; i ++ ){int t;scanf("%d", &t);b[t] ++ ;}for (int A = 0; A <= b[1]; A ++ )for (int B = 0; B <= b[2]; B ++ )for (int C = 0; C <= b[3]; C ++ )for (int D = 0; D <= b[4]; D ++ ){int t = score[A + B * 2 + C * 3 + D * 4];int &v = f[A][B][C][D];v = t;if (A) v = max(v, f[A - 1][B][C][D] + t);if (B) v = max(v, f[A][B - 1][C][D] + t);if (C) v = max(v, f[A][B][C - 1][D] + t);if (D) v = max(v, f[A][B][C][D - 1] + t);}printf("%d\n", f[b[1]][b[2]][b[3]][b[4]]);return 0;
}

http://www.lryc.cn/news/340513.html

相关文章:

  • 美国纽扣电池认证标准要求16 CFR 第 1700和ANSI C18.3M标准
  • 华硕ROG幻16笔记本电脑模式切换管理工具完美替代华硕奥创中心管理工具
  • 【ROS2笔记六】ROS2中自定义接口
  • 设计模式-代理模式(Proxy)
  • 中伟视界:智慧矿山智能化预警平台功能详解
  • 如何在PPT中获得网页般的互动效果
  • HTML段落标签、换行标签、文本格式化标签与水平线标签
  • NVIC简介
  • LeetCode-924. 尽量减少恶意软件的传播【深度优先搜索 广度优先搜索 并查集 图 哈希表】
  • 【linux】yum 和 vim
  • excel试题转word格式
  • C语言学习笔记之指针(二)
  • 在Debian 12系统上安装Docker
  • 策略者模式(代码实践C++/Java/Python)————设计模式学习笔记
  • vue2/Vue3项目中,通过请求接口来刷新列表中的某个字段(如:Axios)
  • Java多线程锁定
  • 【C 数据结构】单链表
  • [MAUI]集成富文本编辑器Editor.js至.NET MAUI Blazor项目
  • Spring Boot | Spring Boot 整合 “Servlet三大组件“ ( Servlet / Filter / Listene )
  • 错误分析 (Machine Learning研习十九)
  • SQL系统函数知识点梳理(Oracle)
  • 面试突击---MySQL索引
  • 关注 | 我国已对百种产品实施强制性产品认证
  • 虚幻引擎架构自动化及蓝图编辑器高级开发进修班
  • Weakly Supervised Audio-Visual Violence Detection 论文阅读
  • 华为海思数字芯片设计笔试第六套
  • 重绘和重排:概念、区别和应用示例
  • 创建k8s deploy yaml文件的imagePullSecrets语句
  • 大模型预测结果导入到Doccano,人工修正预测不准的数据
  • python三方库_ciscoconfparse学习笔记