SP703 SERVICE - Mobile Service 题目分析

news/2024/11/14 19:05:52/文章来源:https://www.cnblogs.com/high-sky/p/18546588

SP703 SERVICE - Mobile Service 题目分析

题目链接

前言

四倍经验

目前这道题是最基础的,四倍经验里面的 \(T_2\) 与此一样,\(T_3\) 有点卡空间,但是还好,方案用 short 或者 char 即可优化,\(T_4\) 一样,有些卡常,问题不大。

分析题目性质

没有什么十分有用的性质。

思路

注意到:分配干活的只有 \(3\) 个人。

看到这么小的数很容易想到三维或者四维 \(dp\) 或者是 状态压缩 \(dp\),很显然是前者。

\(f_{i,a_1,a_2,a_3}\) 表示第 \(i\) 个请求后,三个人的位置分别为 \(a_1,a_2,a_3\) 的最小成本。

转移是简单的,不过多赘述。

时间复杂度 \(\mathcal{O}(nL^3).\)

考虑优化状态。

首先 \(i\) 只是跟上一维有关,所以直接把它删掉。

\(f_{a_1,a_2,a_3}\) 表示当前三个人的位置分别为 \(a_1,a_2,a_3\) 的最小成本。

我们发现当前的转移必定会有一个人到达 \(p_i\),也就是说,我们只需要保留另外两个人的状态(不能等于 \(p_{i-1}\))即可,而第三个人表示的就是上一次做任务的人(即现在在 \(p_{i-1}\) 的人)。

综上,我们可以设 \(f_{a_1,a_2}\) 表示上一次没有做任务经过这次任务之后的两个人的位置在 \(a_1,a_2\) 的最小成本。

不难的转移:

\[f_{a_1,a_2}=\min\{f_{a_1,a_2}+C_{p_{i-1},p_i},f_{a_1,p_{i-1}}+C_{a_2,p_i},f_{p_{i-1},a_2}+C_{a_1,p_i}\} \]

时间复杂度 \(\mathcal{O}(nL^2).\)

初始化:显然地 \(f_{1,2}=f_{1,3}=f_{2,1}=\dots=f_{3,1}=f_{3,2}=0\),其余的为极大值,\(i=1\) 时需要特殊处理。

除此之外,也可以设 \(f_{a_1,a_2}\) 表示当前其中一个人位于 \(p_{i-1}\),另外两个人位于 \(a_1,a_2\) 时的最小成本,转移是类似的。

给出两份代码,一个是不带方案的,一个是带的。


总结:如果状态变少了,转移也得跟着变少,才能达到优化的效果。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/833558.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

团队作业4——项目冲刺-4

团队作业4——项目冲刺-4信息项 内容课程名称 广工计院计科34班软工作业要求位置 作业要求作业目标 在七天敏捷冲刺中,完成工大严选开发,记录每日进展和问题,更新燃尽图、签入代码,并发布集合日志总结成果GitHub链接 GitHub一、团队简介队名:小飞棍队团队成员:姓名 学号罗…

MX 2025--炼石计划 NOIP 模拟赛 #20

斥责打得抽象。T3,T4放俩难的板子。由于是MX的题,就不放题意了。 邻间的骰子之舞 发现复制操作不会超过\(64\)次,而粘贴操作肯定是越均匀越好,直接二分暴力跑就行了。点此查看代码 #include<bits/stdc++.h> using namespace std; #define rep(i,s,t,p) for(int i = s;…

EBS:物料搬运单查看人限制(创建人栏位)

EBS:物料搬运单查看人限制(创建人栏位)Applies to:Oracle Inventory Management - Version: 11.5.9 to 12.0.0 - Release: 11.5 to 12.2Information in this document applies to any platform.FORM:INVTOMAI.FMB - Response CenterSymptomsIn the Move Orders form (INVTOMA…

实景三维赋能智慧公安建设

在新型智慧城市建设的大潮中,智慧公安作为关键一环,对于提高城市安全和治理效率具有重要意义。实景三维技术以其独特的优势,为智慧公安建设提供了强有力的支撑。本文将探讨实景三维技术如何赋能智慧公安建设。一、智慧公安建设的重要性智慧公安是利用现代信息技术,实现对城…

OpenAI模型whisper 音频转文本

最近有一个音频转文本的需求,了解到了OpenAI的whisper模型可以实现。 Whisper 是 OpenAI 提供的一个通用语音识别模型,支持多语言的音频转文本功能,并具有较高的准确性。它的主要用途包括自动语音识别 (ASR)、语言翻译(将音频直接翻译成英文文本)等。Whisper 支持将长时间…

想定制RK3562主板Android系统的开机动画和桌面壁纸吗?看这篇文章就够了

本文介绍瑞芯微RK3562开发板在安卓Android13系统替换开机动画和桌面壁纸的方法,使用触觉智能EVB3562开发板演示,搭载4核A53处理器,主频高达2.0GHz;内置独立1T算力 NPU,可用于轻量级人工智能应用。 开机动画替换 将做好的开机动画文件bootanimation.zip包拷贝至 vendor/roc…

mysql可视化工具 Navicat Premium 12解压版

通过网盘分享的文件:Navicat Premium 12解压版.rar链接: https://pan.baidu.com/s/1kDLlrcaiQRYGLfN5L-IpPA?pwd=3k6h 提取码: 3k6h --来自百度网盘超级会员v8的分享1.解压到指定路径 2.快捷方式,快捷方式用不了,就直接在该文件中直接打开 3. 测试链接

第八课 Python自动化之selenium

python+selenium selenium是一个第三方库,python有很多库; 1、什么是ui自动化? 通过模拟手工操作用户ui页面的方式,用代码去实现自动化操作和验证的行为。 2、ui自动化的优点? (1)解决重复性的功能测试和验证 (2)减少测试人员在回归测试时用例漏测和验证点的漏测 (3)…

png图片隐写实例之隐藏二维码

图片隐写,借助的是图片的每个像素点的RGB值,比如取RGB中的B值,这个值的二级制的最低位是0还是1,在肉眼上看看不出丝毫区别,我们就可以利用这个数据位,我们知道二维码一般都是两种颜色,黑色和白色,黑色的像素点用1表示,白色用0表示,我们就把二维码的每个像素点转换成1…

Windows环境安装Scrapy

虽然可以使用 pip 在 Windows 上安装 Scrapy,但还是建议用 Anaconda 安装教程 1.创建虚拟环境(可选但推荐) 打开 Anaconda Prompt,执行以下命令: conda create -n scrapy_env python=3.12(这里假设使用 Python 3.12,你可以根据需要选择其他版本)。 2.激活虚拟环境: co…

openssh 漏洞修复 openssl升级 OpenSSH_9.8p1麒麟系统

第一步:准备好要升级的包 下图所示 使用命令:yum install *.rpm或 rpm -ivh *rpm 如果使用 yum install *.rpm 安装不了,在使用 rpm -ivh *rpm 提示已有旧的版本 可以使用 rpm -Uvh *.rpm 可以替换安装,根据不通的系统 有可能安装后会重启不成功, 所以需要使用:sudo sy…