当前位置: 首页 > news >正文

ZR2024 数据结构

started in 2025.12.5 15:55。

CF1762F Good Pairs

给定一个长度为 \(n\) 的数组 \(a\),问有多少对 \((l,r)\) 满足存在一个首尾是 \(l,r\) 的单增下标子序列满足相邻对应数之差绝对值不超过 \(k\)
\(n \leq 5 \times 10^5,k,a_i \leq 10^5\)

首先有一个简单的观察:这个子序列的数一定单调。

证明考虑把这个子序列的数每个数看成 \((i,a_i)\) 画到图上,连接相邻点。此时如果有一个谷或者一个峰,你可以直接把中间的删除。

接下来我们用“移动,走“表示这个子序列加数的过程,那么相当于是每次只可以在 \(|a_i-a_j| \leq k\)\(i<j\)\(i\) 移动到 \(j\)

因此我们不妨只考虑不降的情况,即 \(a_l \leq a_r\) 的情况。不增的情况让所有数取一个负号即可。最后再减掉两者重复的部分即 \(a_l=a_r\) 的对数即可。

我们考虑从后往前扫,每次计算当前点作为 \(l\) 的情况下合法的 \(r\) 的个数。对 \(a_r\) 的值分类。

  • \(a_r \in [a_l,a_l+k]\),则可以一步走到。
  • \(a_r>a_l+k\),那么肯定是先走到最小的 \(p>i\) 满足 \(|a_p-a_l| \leq k\),然后再看看能不能走到这些 \(a_r\)

我们令 \(S_x\) 表示 \(x\) 往后走能走到的点的集合。

我们看看现在怎么计算方案数,第一部分是直观的,直接开 bit 算就行,设这种 \(r\) 的数量为 \(c\)。第二部分其实就是 \(S_p\)。那么 \(|S_l|=|S_p|+c\) 吗?并非如此,因为两者有重复部分,\(S_p\) 里面就包含了部分第一种的 \(a_r\)。可以发现去掉这一部分是好做的,直接 bit 即可。

实际上你直接对 \(|S_x|\) 做 dp 即可。

马上有场比赛,待会再写下后面的几个题。

要学的好多啊 /ll

http://www.jsqmd.com/news/62949/

相关文章:

  • 2025年奔驰E级更换轮胎推荐:专业轮胎选择官方攻略
  • 2025年二次元测量仪工厂有哪些?主要有哪些优质产品?
  • 2025年气力输送靠谱厂家TOP5推荐,气力输送设备厂家品牌
  • why englush can not learn a lot of languages
  • 2025年LED公司专业供应商有哪些?
  • 2025年修补防水涂料供应商排行榜:盘点十大专业厂家!
  • 2025年宝马5系更换轮胎推荐:十大轮胎品牌深度揭秘
  • 从测试小白到高手:JUnit 5 核心注解 @BeforeEach 与 @AfterEach 的实战指南 - 教程
  • 多线程?就是Redis单线程还
  • 2025年度自动化配料计量设备公司TOP5权威推荐:精准选型
  • 2025螺旋输送机设备品牌TOP5权威推荐:新深度测评指南,
  • 挖矿病毒分析
  • 模块会根据自学习到的权重对各输入进行加权组合,再经过卷积、BN和激活函数等进一步处理,形成新的融合特征图,是BiFPN内部的核心机制
  • 2025年本田CR-V更换轮胎推荐:专业轮胎排名必读指南
  • 2025年安徽本土五大的律师事务所推荐,股权合伙律师事务所实
  • 2025年奥迪A6L更换轮胎推荐:最新轮胎推荐权威测评
  • 淡化老痘印用什么面膜?2025用户反馈优质面膜TOP10,顽固痘印全瓦解!
  • BiFPN和softmax在目标检测模型中的相对位置关系
  • 2025年度气力输送系统制造企业TOP5权威推荐:甄选企业助
  • 以油养肤沐浴油哪个效果好?2025排行榜前十名沐浴油品牌公布!帮你高效修护肌底
  • 无锡新世源科技有限公司的技术实力怎样?看看哪家产品质量好
  • 好用的护发素品牌有没有推荐的?2025年6款护发素推荐:敏感肌染后受损修护
  • 如何通过无代码平台构建高效智能体 — AgenticHub的革命性创新
  • 2025年贵州装修公司如何选?这份深度评测报告给你答案
  • lambda函数的特性
  • 2025全包装修公司哪家好?最新权威推荐榜单,中高端装修必看
  • 2025年贵州装修公司权威推荐榜首:黔派装饰以匠心工艺与全周期服务
  • 2025年整装公司权威推荐榜单:黔派装饰以匠心重构贵州家装新标准
  • 2025年新房装修公司推荐:黔派装饰引领品质家居新标准
  • 2025年大众途观L更换轮胎推荐:TOP10轮胎权威榜单解析