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

DS trick record 1

考虑一类经典的问题,形如有置换 \(x\leftarrow F(x)\),满足在一个值 \(B\) 次过后有 \(x=F(x)\)

比较常见的是对序列维护区间置换,区间半群(或更弱)和。

例如 P4145 花神游历各国,其中 \(F(x)=\lfloor\sqrt x\rfloor\)\(B=\log \log V\),我们可以用势能线段树维护。

在线段树上每个点记录是否有数满足 \(x\neq F(x)\),然后每次修改我们暴力查找,不难分析出复杂度是 \(n\log n\log\log V\) 的。

但事实上这类问题是可以不依赖势能,并且可以可持久化的。

我们考虑维护一个区间的和为 \(s\),但这样不方便修改,于是我们考虑维护长为 \(B+1\) 的数组,分别为区间整体进行 \(i\in[0,B]\) 次置换过后的和。

不难发现我们合并就是两个数组每个位置对应相加,整体置换就是数组整体平移。

缺陷是我们的空间代价变为了原来的 \(B\) 倍。由于在大多数情况下,我们单次的查询都不弱于 \(O(B)\),于是我们可以考虑按 \(B\) 为长度底层分块,这样时间复杂度无太大变化,并且空间变为线性。

进一步的,我们可以可持久化,甚至可以用 WBLT 维护区间复制,平移。

example : https://www.luogu.com.cn/problem/P8524

http://www.rkmt.cn/news/53412.html

相关文章:

  • 2025年11月成都合同律师,成都律师,成都婚姻律师事务所推荐,资深经验与品牌保障口碑之选!
  • (CF2166) Codeforces Round 1064 (Div. 2)
  • 详细介绍:【C++庖丁解牛】哈希表/散列表的设计原理 | 哈希函数
  • 【LVGL】线条部件
  • 2025年11月新疆电力电缆,高压电缆,特种电缆厂家权威推荐,低损耗稳定性强的行业优选线缆!
  • ReSharper 2025 破解
  • 银河麒麟v10批量部署Python Flask任务小白教程
  • 信息论(七):对数似然比与相对熵(KL散度)
  • 纯CSS实现多种背景图案:渐变条纹、蓝图网格、波点与棋盘效果全解析(附 Sass Mixin 封装) - 指南
  • 2025年11月东莞厂房装修服务商推荐:机械加工/仓储物流/恒温恒湿/无尘净化/重型设备厂房装修施工与设计优势!
  • linux bios 设置
  • 2025年11月新疆电线电缆厂家最新推荐,精准检测与稳定性能深度解析!
  • 2025吉比特-游戏引擎创建-一面复盘
  • 2025年11月石墨烯电地暖/石墨烯供热安装品牌公司综合推荐榜单:权威评测与选购指南
  • 【Docker】[特殊字符] Docker 部署完全指南 - 从本地开发到云服务器 - 指南
  • Day42(12)-F:\硕士阶段\Java\课程代码\后端\web-ai-code\web-ai-project02\tlias-web-management
  • 详细介绍:Next.JS环境搭建,对接Rust的RESTful API
  • P14510 夜里亦始终想念着你 miss 题解
  • 解码死锁的产生与解决
  • P9846 [ICPC 2021 Nanjing R] Paimons Tree
  • linux audio
  • 透视数字世界:可观测平台如何破解企业智能运维困局
  • 2025 履带厂家最新推荐排行榜:聚焦高性能钢制履带与履带板,权威测评优选榜单履带板/履带钢/钢制履带/钢履带/履带型钢公司推荐
  • linux at 脚本
  • 什么是可观测性?数字化转型时代的企业“透视眼”
  • 深入解析:FPGA开发入门:深入理解计数器——数字逻辑的时序基石
  • 2025年佛山二手房拍卖公司专业推荐指南,佛山二手房拍卖/佛山房屋拍卖全流程服务
  • 2 小时,我搭了一套工单实时跟进系统,让每个工序进度一目了然!
  • linux arp缓存
  • CCS新能源船舶智能监控终端