CF1821

news/2024/11/13 7:33:19/文章来源:https://www.cnblogs.com/Sugar-Cube/p/18539636

建议结合独立思考使用本题解。
A 没什么价值略去。

B

有一个序列 \(a\),通过把它的一个子区间进行升序排序生成了 \(b\)
现在给出 \(a,b\),求出可以通过该操作使 \(a\) 变为 \(b\) 的最长子区间的左右端点,输出任意一个。
\(n\le 2\times 10^5\)

如果存在一个位置,使得 \(a_{p}\neq b_{p}\),那么答案一定包含这个位置,则只需贪心地在 \(b\) 中找包含它的极长不降子区间即可。
否则我们需要找出 \(a=b\),我们需要找出序列的极长不降子区间,扫一遍分段即可。
代码

C

有一个小写字母字符串,每次操作可以选择其中不相邻的一些位置删除,然后把剩余的部分进行拼接。
求使得字符串的所有字符相同的最小操作次数。
\(n\le 2\times 10^5\)

不妨考虑在已知剩余的字母 \(c\) 的前提下进行考虑:
发现一定不会操作所有 \(c\),加入它们是不优的。
同时发现删除一个连续段需要的操作次数是 \(\lfloor \log_{2}(len) \rfloor+1\),而答案为该字符把原串分成的所有连续段所需的操作次数的最大值。
故只需最小化最大连续段长,枚举每个位置,考虑该位置字符与上一次出现的间隔进行更新即可。
代码

D

有 n 个不连续(指 \(r_i<l_{i+1}-1\))区间,现在要进行选取 k 不同的位置,要求这些位置都在某个区间内。
若最大一个选取位置为 \(p_r\) 位置构成的连续段个数为 \(cnt\),则权值为 \(p_r+2cnt\),最小化权值。
\(n\le 10^5,1\le l_i\le r_i\le 10^9,k\le 10^9\)

一种方案是贪心地选取前缀,此时最小化了 \(p_{r}\)
发现如果要除了最后一个,一个区间要么填满要么不填,那么发现前缀中只有长度为 1 的区间不填可能更优。
那么枚举前缀贪心地,记一下长度 1 的区间个数即可。
代码

E

给定一个合法括号序列。
定义一个合法括号序列的权值为,不断地删除某两个相邻的左右括号,将代价加上原右括号右边的括号数量,最后把清空序列所需的最小代价。
可以进行不超过 k 次操作,每次选取一个括号移动到另一个位置,要求每一次操作后仍然是合法括号序列。
最小化得到的合法操作序列的权值最小值。
\(n\le 10^5,0\le k\le 10^9\)

(PS:原题 \(k\le 5\)
如果把括号序列的树型结构建出来的话,答案就是 \(\sum\limits dep_{u}-n\),按照后序删除即可。
这个数值同时等于 \(\sum\limits sz_{u}-n\)
考虑一次操作,发现最优一定是选择一个最大的子树,把它拆掉。
于是把子树大小拍成序列,求前 \(k\) 大和即可。
代码

F

Luogu
给定一个数轴,在其上一些位置种共 m 棵树,满足:
只在整点位置种树,不存在两个树占用同点。
每棵树可以向左右中一个方向倒下,占用长度为 \(k+1\) 的区间(即 \([x,x-k]\)\([x,x+k]\)),要求存在一种方案使得倒下占用的位置都在 \([1,n]\) 内,且无重叠。
求合法树位置序列个数。
\(n,m,k\le 10^5\)

思路解析

建立双射,写出转移。
从各个角度考虑优化和转化。

预处理

考虑让每棵树贪心地向左倒,如果不能向左再向右,然后来考虑树倒下占用位置的情况进行计数。
(本质上是构建了二者间的 双射

如果一个区间和上一个间距不够大,则可以有 2 的方案数(因为该区间可以是由左端点位置的树或是右端点位置的树生成),否则方案数为 1,故列出转移式:
\(f_{i,j}=2\sum\limits_{t=0}^{k-1}f_{i-1,j-k-t}+\sum\limits_{t=k}^{j}f_{i-1,j-k-t}\)
直接前缀和优化可做到 \(\mathcal O(n^{2})\)

生成函数

注意到第一维这里很明显有层(指转移式与 \(i\) 无关)的概念,故对第二维构造生成函数。
每层转移相同,把转移式写作刷表的形式可以发现是卷积的形式,用多项式快速幂即可做到 \(\mathcal O(n\log n)\)
如果你对生成函数继续推导甚至可以得到 \(\mathcal O(n)\) 的式子,但这里不作重点展开。

容斥

从另一个角度看,可以是看成决策 m 个结束位置,要求任意两个位置之间距离 \(>k\),之后每有距离 \(\leq 2k\) 乘上一个 2 的系数。
故考虑做 \(f_{i}\) 表示恰好若干个距离 \(>2k\) 的方案数,答案就是 \(\sum\limits_{i=0}^{m} 2^{m-i}f_{i}\)
这样我们就可以把这些方案减去并隔板,那么钦定有 \(i\) 个距离 \(>2k\) 的方案数有 \(g_{i}=\binom{m}{i}\binom{n-mk-ik}{m}\)
用二项式反演再推推式子就可以做到 \(\mathcal O(n)\)

网格图

考虑之前的转移式,由于有层的概念,并且转移范围和系数都是常数,所以可以把问题映射到网格图上的路径权值和计数问题。
直接做图是这样的:
![[Pasted image 20241111133950.png]]
这样边的种类太多了,考虑进行变换。
注意到上面的 dp 式子是区间转移的形式,那么我们可以考虑变为单点转移。
\(f_{i,j}=f_{i-1,j}+(2f_{i-k-1,j-1}-f_{i-2k-1,j-1})\)
这个式子的含义是在 \([i-k,i]\) 放置区间时,要容斥掉所有只在足够远的距离上放区间的贡献。
于是我们有了新图,把每一行都做平移可以得到:
![[Pasted image 20241107195907.png]]
其中红边权值为 1,黑边权值为 2,黄边权值为 -1,注意第 0 层也有红边,图是错的,那么答案就是 \((0,0)\)\((n-m(k+1),m)\) 的所有路径权值积之和。
枚举黄边经过次数,然后发现式子就和上面的二项式反演后的结果是一样的了。

代码

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

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

相关文章

海柔仿真系统存储实践:混合云架构下实现高可用与极简运维

海柔创新是一家专注于箱式仓储机器人系统的研发和设计的科技公司,其仿真平台通过数字模拟技术,再现实际仓库环境和设备,利用导入的地图、订单、库存及策略配置等数据来验证和优化仓储解决方案,确保设计方案的效率和合理性。 最初,海柔的仿真平台在单机环境中运行,但随着数…

ENVI55扩展工具: MODIS Gap-Filled 数据读取工具

1 工具介绍 工具支持 ENVI 5.5 及以上版本。 大部分 MODIS 产品数据均可使用 MCTK 工具打开和处理。但是最近在使用 MODIS Gap-Filled 数据时,发现 MCTK 工具并不支持,会弹出如下提示。 MODIS Gap-Filled 数据通常为年合成产品,例如 MOD17A3HGF 为年合成植被净初级生产力和…

如何打造高效团队文化:项目管理工具必不可少

在当今的职场环境中,“高效团队文化”已成为一个热门话题。高效的团队不仅能快速适应项目需求的变化,还能通过顺畅的沟通和高效的执行来确保高质量的成果。而一个成功的团队文化通常离不开三个关键要素:合适的管理工具、有效的沟通机制、以及强大的执行力。 建立高效团队文化…

深圳电子MES制造执行系统选型特点

电子mes系统在选型时,需要考虑多个特点以确保系统能够满足企业的实际需求。针对广州地区的MES系统选型,以下是一些关键特点:深圳mes系统数据采集与整合能力:MES系统应能够整合多种数据采集渠道(如RFID、条码设备、PLC、Sensor等),确保现场数据的实时、准确、全面采集。良…

QRust(三)编程框架

把Rust作为动态库或静态库链接到Qt环境中,本就是一件复杂的工作,在此基础上还要引入QRust更是难上加难,因此在这一章我将手把手的引导你向前迈进,并跨过我曾经遇到的坑。 编程环境 Qt环境:Qt6,没错不支持Qt5。因为我发现struct的类型推导在Qt5环境下有错误。 Rust环境:理…

ARL356-ASEMI车用整流二极管ARL356

ARL356-ASEMI车用整流二极管ARL356编辑:ll ARL356-ASEMI车用整流二极管ARL356 型号:ARL356 品牌:ASEMI 封装:BUTTON 特性:车用整流二极管 正向电流:35A 反向耐压:600V 恢复时间:ns 引脚数量:2 芯片个数:2 芯片尺寸:MIL 浪涌电流:500A 漏电流:10ua 工作温度:-65℃…

信息收集(下)

IP端口信息收集4.1 IP信息收集4.1.1 IP反查域名http://stool.chinaz.com/samehttp://tools.ipip.net/ipdomain.php如果渗透目标为虚拟主机,那么通过IP反查到的域名信息很有价值,因为一台物理服务器上面可能运行多个虚拟主机。这些虚拟主机有不同的域名,但通常共用一个IP地址…

web(xss漏洞作业)

web安全作业(xss漏洞)需要掌握的知识XSS漏洞(原理、分类、危害、常用的payload)XSS平台的搭建与使用理论作业 1.xss 漏洞原理? 2.XSS的类型? 3.反射型XSS和存储型XSS的区别? 4.XSS的攻击过程? 5.XSS常用的payload构造方法? 1.原理:攻击者在有漏洞的前端页面嵌入恶意代…

QRust(一) 简介

QRust是一个开源组件,是Qt和Rust两种语言的混合编程中间件,是Qt调用Rust函数的支持技术。QRust来源于工具软件OnTheSSH,OnTheSSH软件由Qt和Rust两种语言共同构建,Rust实现了SSH通讯底层协议,Qt搭建程序界面,Qt调用Rust的技术需求催生出了QRust。 一个使用QRust的例子: R…

服务器漏洞修复:TLS 1.0 已启用、HSTS、CSP

1、TLS 1.0 已启用 描述: 此 Web 服务器支持通过 TLS 1.0 加密。TLS 1.0 不被认为是“强密码术”。根据 PCI 数据安全标准 3.2(.1) 的定义和要求,在保护从网站往返的敏感信息时,TLS 1.0 并不被认为是 "强加密"。根据 PCI,"2018 年 6 月 30 日是禁用 SSL/早前…

一款 C# 编写的神经网络计算图框架

前言 深度学习技术的不断发展,神经网络在各个领域得到了广泛应用。为了满足 .NET 开发的需求,推荐一款使用 C# 编写的神经网络计算图框架。 框架的使用方法接近 PyTorch,提供了丰富的示例和详细的文档,帮助大家快速上手。 框架介绍 项目完全使用 C# 编写,提供了一个透明的…

安全通道异常识别系统

安全通道异常识别系统通过安装在消防通道附近的监控摄像头,安全通道异常识别系统对安全通道进行24小时不间断的监控。当系统检测到防火门被异常开启或安全通道被堵塞时,会立即启动警告机制,通过声音、灯光等方式提醒相关人员进行处理。同时,系统还会将异常信息实时传输到监…