cf div2 1073 D1,D2

news/2026/1/22 23:09:40/文章来源:https://www.cnblogs.com/jjjxs/p/19519125

算是寒假的第一把 cf,被这道题意极其绕的两个题困扰了许久,遂写题解记录思考过程。

D1. Sub-RBS (Easy Version)

意外的是,赛时写出的代码竟然与官解思路是一模一样的。但其实发现还可以转化成一个更强的结论,这也是能够做出 D2 的关键。

我的做法是:只需要固定原序列的某个以右括号结尾的前缀,并将结尾的右括号替换成其右侧最近的左括号(替换的是选择的位置)。这样,这个右括号被替换成了左括号,剩余的前一部分和原前缀相同,正好满足了题目描述的 better 条件。那么我们接下来就只需要尽可能扩大剩余的选择长度,使得选择的子序列是 RBS 即可。

容易发现,在 “将结尾的右括号替换成其右侧最近的左括号” 这一过程中,我们跳过的全部都是右括号,而 RBS 要求左右括号数量相同。那么我们可以猜想:是不是剩余部分有足够的左括号供我们跳过,其他部分全选,形成的就一定是 RBS 了?赛时并没有继续深入思考这一点,而是勇了一把直接猜结论,正好猜对了。事实上也可以证明出来一定是这样:

首先需要明确 RBS 的定义:将左括号当作 \(1\),右括号当作 \(-1\),求该括号串的前缀和 \(pre\)。那么一个括号串是 \(RBS\),当且仅当:

  • 末尾项 \(pre\) 等于 \(0\)
  • 前缀所有位置的 \(pre \geq 0\)

显然,我们去除的是等量的左右括号,最终子序列的 \(pre\) 值一定仍然为 \(0\);且在去除括号序列在顺序上满足:所有右括号均在左侧,所有左括号均在右侧。那么贪心地思考,前缀所有位置的 \(pre\) 显然仍是非负的。因此,上述两个条件都满足,形成的子序列一定是 \(RBS\),证毕。

综上,我们只需要枚举所有原序列中以右括号结尾的前缀,计算该情况下可选出的最长 RBS,所有情况取最大值就可以了。具体实现见代码。

code

D2. Sub-RBS (Hard Version)

继续思考 D1 有没有什么更强的结论存在:我们发现,若每次选择的是 紧右侧是'(' 的 ')',那么跳过的 ')' 数量就会减少,进而剩余部分需要跳过的 '(' 数量也会减少,那么条件就会更加宽松;并且这样做还能扩大答案的长度,何乐而不为呢?于是,我们会发现:

  • 若有解,则答案一定是 \(n-2\)
  • 原序列中的子序列 \(t\) better,当且仅当 \(t\) 是一个 RBS ,并且在 \(t\) 中存在 “)(”,并且其右侧存在 '(' (进一步思考,其实就是存在子序列 ")(("(不一定连续),因为只有'(' ')'两种字符

其中第二个条件就是衡量子序列价值的一个关键条件,必须要发掘到,要不然 D2 就会特别难想。

D2 要求原序列的所有子序列的总价值之和,而每个子序列价值经过我们上述处理变为了一个非常清晰的特征。于是我们可以考虑如何 \(dp\) 了。

\(dp\) 过程直接贴官解了,写得非常清晰易懂:
pZgF6z9.png

code

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

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

相关文章

Java计算机毕设之基于springboot的绍兴旅游攻略分享系统(完整前后端代码+说明文档+LW,调试定制等)

博主介绍:✌️码农一枚 ,专注于大学生项目实战开发、讲解和毕业🚢文撰写修改等。全栈领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围:&am…

P4568 飞行路线

点击查看代码 #include<bits/stdc++.h> using namespace std;const int N=10010,M=100010,K=15; int h[N],ne[M],e[M],idx,w[M]; int dist[N][K]; int st[N][K]; int n,m,k; int s,t;void add(int a,int b,int c…

护考软件千千万,选错真的会挂科!2026最新避坑指南(含排行榜)

每年护考成绩出来,总有人后悔:“早知道就不乱用那个盗版题库了,好多题答案都是错的!” 2026年护考备考已经拉开帷幕,市面上的刷题APP五花八门。有的收费死贵,有的题库万年不更。为了让大家少走弯路,我自费测评了…

Windows快捷命令集合

Windows快捷命令集合1. systeminfo : 显示系统详细信息(安装日期/补丁/内存/系统版本) 2. sfc /scannow:扫描并修复系统文件损坏【需管理员权限】 3. chkdsk /f:检查磁盘错误并修复【需重启】【需管理员权限】 4. …

别乱报班!2026执业药师高性价比培训TOP5实测(附避坑)

别乱报班!2026执业药师高性价比培训TOP5实测(附避坑)一、开篇:执业药师备考痛点直击,选对机构事半功倍 1低通过率 + 多重备考难点,机构选择成通关关键 2024 年执业药师考试成绩公布后,其全国 21.04% 的通过率数…

当经典男装遇见先知AI:一场关于“品味”的效率革命

经典男装追求历久弥新的质感与品味&#xff0c;但其营销传播却不得不面对瞬息万变的数字媒体环境。如何高效产出既保持品牌调性&#xff0c;又能引发当代共鸣的优美文案&#xff1f;北京先智先行科技有限公司推出的“先知大模型”、“先行AI商学院”与“先知AIGC超级工场”&…

突发,Deepseek新模型MODEL1曝光!

作为明星产品&#xff0c;必须得用放大镜看&#xff01;正值DeepSeek-R1 发布一周年之际&#xff0c;DeepSeek 在 GitHub 上悄悄更新了一波代码。结果&#xff0c;眼尖的开发者在 DeepSeek 核心的推理优化库 FlashMLA 中&#xff0c;发现了一个此前从未公开过的神秘代号&#x…

内容、媒体、时间:详解影响软文收录的三大变量及优化策略

在信息爆炸的时代&#xff0c;软文收录成为品牌传播效果的关键。许多企业常困惑于文章未被收录&#xff0c;其实这取决于内容质量、媒体选择与发布时机三大变量的系统配合。本文将解析这三大变量&#xff0c;并提供优化策略&#xff0c;助力软文传播效果最大化。 一、内容变量&…

dwmredir.dll文件丢失找不到问题 免费下载方法分享

在使用电脑系统时经常会出现丢失找不到某些文件的情况&#xff0c;由于很多常用软件都是采用 Microsoft Visual Studio 编写的&#xff0c;所以这类软件的运行需要依赖微软Visual C运行库&#xff0c;比如像 QQ、迅雷、Adobe 软件等等&#xff0c;如果没有安装VC运行库或者安装…

【毕业设计】基于springboot的面向大学生的职业兴趣评估与就业指导平台(源码+文档+远程调试,全bao定制等)

博主介绍&#xff1a;✌️码农一枚 &#xff0c;专注于大学生项目实战开发、讲解和毕业&#x1f6a2;文撰写修改等。全栈领域优质创作者&#xff0c;博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围&#xff1a;&am…

Java计算机毕设之基于springboot的企业内部知识产权管理系统基于SpringBoot+Vue的企业内部知识产权管理系统(完整前后端代码+说明文档+LW,调试定制等)

博主介绍&#xff1a;✌️码农一枚 &#xff0c;专注于大学生项目实战开发、讲解和毕业&#x1f6a2;文撰写修改等。全栈领域优质创作者&#xff0c;博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围&#xff1a;&am…

【毕业设计】基于springboot的企业内部知识产权管理系统(源码+文档+远程调试,全bao定制等)

博主介绍&#xff1a;✌️码农一枚 &#xff0c;专注于大学生项目实战开发、讲解和毕业&#x1f6a2;文撰写修改等。全栈领域优质创作者&#xff0c;博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围&#xff1a;&am…

RAG 检索模型如何学习:三种损失函数的机制解析

Agent 系统发展得这么快那么检索模型还重要吗&#xff1f;RAG 本身都已经衍生出 Agentic RAG和 Self-RAG&#xff08;这些更复杂的变体了。 答案是肯定的&#xff0c;无论 Agent 方法在效率和推理上做了多少改进&#xff0c;底层还是离不开检索。检索模型越准&#xff0c;需要…

【课程设计/毕业设计】基于SpringBoot3+Vue3面向大学生的职业兴趣评估与就业指导平台基于springboot的面向大学生的职业兴趣评估与就业指导平台【附源码、数据库、万字文档】

博主介绍&#xff1a;✌️码农一枚 &#xff0c;专注于大学生项目实战开发、讲解和毕业&#x1f6a2;文撰写修改等。全栈领域优质创作者&#xff0c;博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围&#xff1a;&am…

Java计算机毕设之基于springboot的食品安全管理系统基于springboot+vue的食品安全管理系统(完整前后端代码+说明文档+LW,调试定制等)

博主介绍&#xff1a;✌️码农一枚 &#xff0c;专注于大学生项目实战开发、讲解和毕业&#x1f6a2;文撰写修改等。全栈领域优质创作者&#xff0c;博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围&#xff1a;&am…

YOLO26改进 - C2PSA | C2PSA融合TSSA(Token Statistics Self-Attention)令牌统计自注意力,优化遮挡目标感知

# 前言 本文介绍了Token Statistics Self-Attention(TSSA)机制,并将其集成到YOLO26中。传统自注意力计算复杂度高,TSSA进行了范式转变,基于token统计特征实现高效注意力交互。它通过“算法展开”推导得出,以“最…

微信小程序开发公司哪家比较好?最新测评报告给你答案

在数字化转型成为必选题的今天,微信小程序已成为企业线上引流、服务客户、促成交易的关键工具。然而,面对市场上众多的小程序开发公司,许多企业主和项目负责人都会感到困惑:微信小程序开发公司哪家比较好? 选择时…

100dB 深度消回音 + AI 智能降噪!WX-0813 语音处理模组,重塑全场景音频通话体验

WX0813AI降噪回音消除模组在智能门禁、远程会议、车载通信等多元化音频场景中&#xff0c;回声干扰、环境噪音嘈杂、设备适配复杂等问题&#xff0c;往往成为制约产品体验的关键瓶颈。WX-0813 AI 降噪回音消除模组的横空出世&#xff0c;以 “超强声学处理 高集成设计 广泛适…

YOLO26改进 - SPPF模块 | SPPELAN 空间金字塔池化与增强局部注意力:替代SPPF增强多尺度上下文捕获,提升检测精度

前言 本文介绍了可编程梯度信息(PGI)和通用高效层聚合网络(GELAN),以及SPPELAN模块在YOLO26中的结合应用。针对深度网络数据传输中的信息丢失问题,提出PGI概念以提供完整输入信息计算目标函数,获得可靠梯度更新…

【毕业设计】基于springboot的食品安全管理系统(源码+文档+远程调试,全bao定制等)

博主介绍&#xff1a;✌️码农一枚 &#xff0c;专注于大学生项目实战开发、讲解和毕业&#x1f6a2;文撰写修改等。全栈领域优质创作者&#xff0c;博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围&#xff1a;&am…