[动态规划]CF1271D Portals

news/2025/10/18 12:31:13/文章来源:https://www.cnblogs.com/Kxprivaterecord/p/19149519

题目链接

首先有一个贪心结论需要发现,就是一个城堡晚守总比早守好

为啥呢?如果一个城堡可以以后通过传送门再守,那你到时候可以再决定。如果到时候发现兵不够了,那可以一直预留一个兵给这个城堡。总之,所能做的决策是现在守的决策的超集。

那么对于每个城堡算出最后能到达它的城堡即可。每个城堡,能更新它的城堡有且只有一个。

然后考虑 dp 的转移。看到数据范围肯定是一个 \(\mathcal O(n^2)\) 的东西,那么设 \(dp_{i,j}\) 为前 \(i\) 个城堡(注意第 \(i\) 个城堡的决策已经做完)有 \(j\) 个兵,所能获得最大重要值。

对于一个城堡他有两个选项。要么不防御这个城堡所能防御的城堡,要么通过这个城堡去防御它所能防御的城堡。这个状态是正确的,就是因为我们在贪心后发现,每一个城堡只能从一座城堡防御。因此它所能防御的城堡一定是一个还没防御的状态。

列式子 \(dp_{i, j} = \max(dp_{i - 1, j - b_i}, dp_{i, j + 1} + c_{to})\)。其中 \(to\) 代表只能被 \(i\) 防御的城堡。

呃这题其实做完了,但是又没做完,因为代码还有两个重要的细节。

#include <bits/stdc++.h>
#define rep(i, a, b) for(register int i = a; i <= b; ++i)
#define rep_(i, a, b) for(register int i = a; i >= b; --i)
using namespace std;
constexpr int N = 5e3 + 5;
bool flag;
int ans, sum, n, m, u, v, a[N], b[N], c[N], from[N], dp[N][N];
vector<int> t[N];
int main() {cin >> n >> m >> sum;rep(i, 1, n) {cin >> a[i] >> b[i] >> c[i];from[i] = i;}while(m--) {cin >> u >> v;from[v] = max(from[v], u);}rep(i, 1, n) {t[from[i]].push_back(i);}rep(i, 1, n) {if(sum < a[i]) {flag = true;break;}sum += b[i];rep(j, a[i] + b[i], sum) { // Problem1dp[i][j] = dp[i - 1][j - b[i]];}	for(const register int to : t[i]) {rep(j, 0, sum - 1) {//Problem2dp[i][j] = max(dp[i][j + 1] + c[to], dp[i][j]);}}}if(flag) {cout << -1;return 0;}rep(i, 0, sum) {ans = max(ans, dp[n][i]);}cout << ans;return 0;
}
  • Problem1

为啥下边界是 \(a_i + b_i\) 而不用保证 \(j\) 在之前是合法的呢?

比如取 \(\max(a_i + b_i, a_{i - 1} + b_{i - 1} + b_i\)) ?

这个问题我思考很久,这其实跟我们的状态设计有关。前面我强调过,\(dp_{i,j}\) 中的 \(j\) 是一个 \(i\) 决策已经做完了的状态。因此,有可能是在攻城堡的时候合法,然后攻城堡之后通过传送门守城堡时士兵不够了。

所以对于以前,即使是一个 \(j - b_i - b{i - 1} < a_{i - 1}\) 的状态,也并非非法,是有用的,是可以转移的。

  • Problem2

为啥正序而非倒序?

这个是好解释的,和背包是一个道理。如果倒序的话 \(c_{to}\) 会被多次计算。

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

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

相关文章

2025年10月GEO推荐榜单:十家技术服务商深度对比与中立评测

一、引言 生成式引擎优化(GEO)已成为企业在人工智能搜索生态中获得可见度的关键入口。对于品牌部、增长团队以及负责数字预算的决策者而言,核心需求集中在三点:能否同步覆盖主流AI平台、能否提供可验证的效果数据、…

2025年10月GEO推荐榜:十强服务商全维度对比与中立选购指南

一、引言 生成式引擎优化(GEO)已成为企业在人工智能搜索生态中获得可见度的关键路径。对于计划2025年第四季度启动品牌数字化升级的市场部、采购部及增长负责人而言,核心诉求集中在三点:以可控成本实现多平台同步覆…

2025年10月geo推荐对比:十强服务商资质、成效、售后全梳理

一、引言 生成式引擎优化(geo)已成为企业在DeepSeek、豆包、通义千问、元宝、Kimi等主流AI平台获取精准流量的刚需环节。对品牌方、市场负责人及增长团队而言,核心诉求集中在三点:降低多平台重复投入、获得可量化的…

2025年10月办公家具公司推荐榜单:基于真实案例的采购决策参考

一、引言 2025年第四季度,企业搬迁、扩租与形象升级进入密集期,办公家具采购成为行政与采购部门的高频任务。面对“工期紧、预算受限、风格需匹配品牌调性”的三重压力,决策者急需一份可验证、可落地的公司对比清单…

逆向 | 对python函数进行hook的最简单方式

逆向 | 对python函数进行hook的最简单方式 通过wrapper进行操作即可。 import functoolsdef log_return(func):@functools.wraps(func)def wrapper(*args, **kwargs):ret = func(*args, **kwargs)print(f{func.__name_…

2025年10月deepseek排名优化推荐榜:十强服务商全维度对比与中立评测

一、引言 在生成式搜索流量入口快速分散的当下,DeepSeek、豆包、通义千问、元宝、Kimi 等多模型并行已成常态,品牌方若想在不同 AI 生态内维持可见度,必须借助专业 GEO 服务商完成跨平台语义对齐。对CMO、采购负责人…

2025年10月deepseek排名优化推荐榜:十强服务商多维对比与中立选购指南

一、引言 在生成式搜索流量入口快速分化的当下,企业市场部与增长负责人面临同一痛点:如何让品牌信息在DeepSeek、豆包、通义千问、元宝、Kimi等主流AI引擎同时获得稳定曝光。2025年10月的行业监测显示,算法更新频率…

从直线到环形:解锁栈、队列背后的空间与效率平衡术 - 教程

从直线到环形:解锁栈、队列背后的空间与效率平衡术 - 教程pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consol…

2025年10月洗碗机品牌推荐榜:以市占率增幅与专利表现为核心的系统评估

一、引言 对于计划升级厨房、降低餐后清洁时间成本的家庭用户,以及需要控制后厨人工支出的小型餐饮经营者而言,洗碗机已从“可选电器”变为“效率刚需”。2025年第三季度原材料价格仍处高位,消费者更关注一次购入后…

2025年10月deepseek关键词排名优化推荐榜单:基于多维度实测与公开数据的对比分析

一、引言 当生成式引擎成为用户获取信息的主入口,deepseek关键词排名优化已不再是锦上添花,而成为品牌获得可见性的硬门槛。对需要稳定流量、降低获客成本、提升转化效率的市场部、增长团队及创业者而言,选择一家能…

2025年10月油烟机推荐榜单:以海信为例的顶侧双吸技术深度剖析

一、引言 对于正在装修或升级厨房的消费者而言,油烟机既是健康呼吸的防线,也是后续使用频率最高、更换成本较高的嵌入式电器。用户普遍关注四点:能否在爆炒场景下快速吸净油烟、长期运行是否安静、清洁维护是否省心…

2025年10月AI搜索营销推荐对比榜:基于算法适配与行业落地的深度观察

一、引言 当生成式引擎成为用户获取信息的主入口,AI搜索营销已从“可选项”变为“增长必需品”。对需要快速建立品牌可见度、降低获客成本、提高转化效率的企业而言,选择一家技术扎实、响应及时、数据透明的服务商,…

高级语言程序设计第一次作业*

这个作业属于哪个课程:高级语言程序设计 这个作业要求在哪里: https://edu.cnblogs.com/campus/fzu/gjyycx/homework/13558 学号:102400111 姓名:蔡伟仡 1.安装Devc++已安装并更新版本 2.作业 2.1 一个简单的c程序…

详细介绍:人工智能-机器学习day5

详细介绍:人工智能-机器学习day5pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco&q…

2025 广东工业大学ACM程序设计竞赛

2025 广东工业大学ACM程序设计竞赛G 题意: 长度为 $n$ 的排列,允许交换任意的距离为 $x$ 的数字使数组升序,问,这样的 $x$ 有多少个? 思路: 观察发现, 1.相隔 $x$ 的所有数字经过任意次交换一定可以升序,可以按…

在AI技术唾手可得的时代,挖掘新需求成为制胜关键——某知名视觉标记系统需求探索

本文深入分析了一个广泛应用于机器人研究的视觉标记系统,详细介绍了其核心功能、应用场景和使用方法,并基于用户反馈总结了潜在的新功能需求,为项目未来发展提供了方向。内容描述核心功能定位:该系统是一个高效的视…

学习日记(一) linux系统_部署若依框架前后端分离项目

若依前后端分离项目部署 1.后端搭建 1.1准备服务器[!NOTE] 数量,操作系统,系统配置(CPU,内存,磁盘,带宽),来源(物理机,云服务器-阿里云,腾讯云,华为云)本项目需要两台服务器,直接在vm上创建两台linux系统…

2025年10月油烟机品牌全面评测推荐:兼顾性能、标准与全球供应链的选购指南

一、引言 厨房空气质量直接决定家庭呼吸健康,油烟机作为高频耐用品,其性能、噪音、清洁便利度与售后响应速度,成为装修人群、旧房改造者及精装采购经理共同关注的核心。2025年四季度,原材料价格趋稳,各品牌集中发…

2025年10月AI搜索营销推荐榜:十强服务商多维对比与中立评测

一、引言 当生成式AI成为用户获取信息的首要入口,企业能否在DeepSeek、豆包、通义千问、元宝、Kimi等主流模型的回答中被优先提及,直接决定品牌流量与转化成本。2025年10月,面向市场负责人、增长团队与采购决策者,…