P11771 题解

news/2025/11/3 21:21:17/文章来源:https://www.cnblogs.com/liangbowen/p/19188338

blog。虽然糖丸了,但是卡了还是半天卡过去了。感谢出题人开 2s /kt!!


最显然的暴力是,考虑直接算每个 \(i,j,k\) 的贡献。

  • \(p_{i}\le p_k\wedge p_j\le p_k\):贡献为 \(0\)
  • \(p_{i}>p_k\wedge p_j\le p_k\):贡献为 \(\min(a,c)\times(p_i-p_k)\)
  • \(p_{i}\le p_k\wedge p_j>p_k\):贡献为 \(\min(b,c)\times(p_j-p_k)\)
  • \(p_i>p_k\wedge p_j>p_k\):再分类 \(i,j\) 大小,不妨设 \(p_i<p_j\),那么贡献为 \(\min(c(p_j-p_k),b(p_j-p_i)+c(p_i-p_k),a(p_i-p_k)+b(p_j-p_k))\)

注意最后一种情况很难处理,因为要对 \(p\) 做比较,不利于上数据结构。考虑强行化简,记 \(u=p_j-p_k\)\(v=p_j-p_i\),那么 \(p_i-p_k=u-v\),注意这里 \(u,v\ge0\)。上面式子可以写成

\[\min(cu,cu+(b-c)v,(a+b)u-av) \]

代码一坨史,复杂度 \(O(n\log n)\)

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

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

相关文章

MySQL排序算法

一、概述 ORDER BY的核心功能,是按照指定的单个或多个字段,对SELECT查询返回的结果集进行升序(ASC,默认)或降序(DESC)排列,以满足业务对数据有序性的需求。但要判断ORDER BY的实际执行效率,最直接的工具是EXP…

CSP-S 2025 饭堂寄

省流:\(100+48+0+0=148\),爆炸。 Day -2 考试前几天竟然发现有些感冒了。 Day -1 考试前一天晚上睡得比较晚,因为回到家都接近 11 点钟了。 Day 1 早上起来已经 9:30 了,起来开始打板子,其实这个时候已经感觉状态…

如何在github上使用github免费域名下预览自己的项目

一、新建自己的工程然后上传自己的工程文件,有首页的话记下首页的路径。 二、点击Settings 点击Pages,填写自己要访问的index.html文件路径

在ROS中安装PX4依赖实现Gazebo仿真

在ROS中安装PX4依赖实现Gazebo仿真最近这几天在做一个无人机项目,在配置gazebo仿真时出现了找不到px4的问题,但是又无法直接安装,需要自行编译 简单做一下记录 sudo apt install ninja-build exiftool ninja-build …

20232314 2024-2025-1 《网络与系统攻防技术》实验四实验报告

一、实验内容 1、恶意代码文件类型标识、脱壳与字符串提取 对提供的rada恶意代码样本,进行文件类型识别,脱壳与字符串提取,以获得rada恶意代码的编写作者,具体操作如下: (1)使用文件格式和类型识别工具,给出ra…

二、驱动基础(基于北京迅为电子)

一、基础Linux驱动的分类:字符设备(顺序访问)、块设备(随机访问)、网络设备(数据包收发) Linux内核源码的目录架构:arch(架构相关)、block(块设备)、crypto(加密算法)、Documentation(官方文档)、driv…

Linux驱动开发学习日记(一)

Linux驱动开发学习日记(一)整完无人机项目之后进行更新,具体怎么写还没想好,现在学的也比较迷糊

Windows 路由表详解

Windows 路由表详解windows 路由表详解 查看ip信息 字段说明IPv4 Address: ipv4地址,用于标识网络中的主机Subnet Mask: 子网掩码,分为 连续的1 和 连续的0 两部分, 可以简写为 /n, 例如 /24,表示高24位为1,剩下为…

微软 Foundry Local - 本地 AI 推理解决方案

微软在其 2025 Build 大会上发布了 Foundry Local,能够在本地设备上执行 AI 推理,意味着可以利用本地的 AI 算力,如:CPU/GPU/NPU;也让用户在隐私方面得到了充足的保障,还能有改善成本效益!Foundry Local 默认除…

如何启用cycloneDDS的iceoryx

共享内存交换 — Eclipse Cyclone DDS,0.11.0 首先我们需要先下载安装iceoryx,因为cycloneDDS如果要使用共享内存传输是依赖于这个插件的。顺带一提,只有同一节点的不同进程间会使用到共享内存,cycloneDDS是根据如…

老化车

老化车非常好 👍,这个问题在电子制造和测试领域里很关键。 “老化车”(又叫 Burn-in Cart 或 Aging Rack)是用于电子产品在出厂前做 老化测试(Burn-in Test) 的一种设备或平台。 下面我给你系统讲清楚 👇🧭…

Android Studio 2025.2.1 汉化中文包临时解决方案

打开 JetBrains 官网 Chinese ​(Simplified)​ Language Pack / 中文语言包 下载最新版 242.152 版本插件将 zh.242.152.jar 文件解压出来用压缩包工具打开 zh.242.152.jar 找到目录 META-INF 并打开用文本编辑工具打…

Markdown 学习训练

Markdown 学习训练 引用(使用>)这是我的第一篇博客,本篇博客是参照狂神说课程进行学习,目的是为了练习markdown使用语法。主要包含各级标题、字体、图片、代码块、超链接、表格使用语法练习。具体可前往typora官网…

jmeter设置中文页面的两种方法

JMeter设置中文界面有两种方法:临时设置(仅当前会话有效)和永久设置(修改配 置文件后永久生效)。 设置方法 1.临时设置(关闭后恢复英文): 打开JMeter,点击菜单栏“Options”→“Choose Language”→选择“Chi…

win10 下运行aoe2,报错,应用程序无法正常启动 0xc000022

控制面板 →搜索“启用或关闭 Windows 功能”找到并勾选 “旧版组件” → “DirectPlay” → 确定 → 重启电脑。

Python生成器表达式详解(含与列表推导式核心对比、别名探讨)

从“囤货”到“现做”:Python生成器表达式详解(含与列表推导式核心对比) 在Python中,处理数据时经常会遇到一个矛盾:既要简洁的语法,又要避免大量数据占用内存。列表推导式虽能简化代码,却会“一次性生成所有元…

在Fiddler中模拟网络中断,返回500错误的过程

开启断点在 Fiddler 菜单栏点击 Rules → Automatic Breakpoints,选择以下任一断点模式: Before Requests(请求发送前断点):可修改请求后再发送,适合模拟服务器因异常请求返回 500。 After Responses(响应返回后…

P4198 楼房重建 分析

题目概述 题目链接:https://www.luogu.com.cn/problem/P4198。 给出一个 \(x\) 轴长度为 \(n\),\(y\) 轴长度为 \(10^9\) 的二维平面。 一共有 \(n\) 天,第 \(i\) 天令坐标为 \(x_i\) 的线段变长为 \(y_i\)(屋顶就…

构建企业级AI提示词攻击防御体系的实战指南-2025年

构建企业级AI提示词攻击防御体系的实战指南-2025年在人工智能技术深度赋能的2025年,大型语言模型已全面渗透金融、政务、医疗等企业核心业务场景。与此同时,提示词攻击正以惊人的速度演进为企业AI安全的头号威胁。研…

矩阵的秩

设运输问题的约束矩阵为: \[A = \begin{bmatrix} 1 & 1 & 1 & 0 & 0 & 0 \\[6pt] 0 & 0 & 0 & 1 & 1 & 1 \\[6pt] 1 & 0 & 0 & 1 & 0 & 0 \\[6pt] 0 &a…