2022.11.16 闲话

势能分析 Trick .

如果运算 f 满足 fk(x)(上指标是复合)当 k 较小时是定值可以势能线段树 .

带修的话以区间加为例,如果 f(a)f(b)ab 复杂度就是对的,要不然需要修正一下 .

KTT?https://www.cnblogs.com/CDOI-24374/p/16789485.html

向下取整的除法运算

静态

直接看动态的得了😅

LOJ6029 市场

注意到一个区间进行至多 log(m2m1) 次除后即可变成区间减 .

定义对于线段树上的结点 u,其势能 Δ(u)=log(m2m1) .

则一次区间开根对势能的影响就是对于所有在区间内的结点 u,将 Δ(u)max{0,Δ(u)1},代价为所有结点势能减少总量 .

注意到一次区间加只会修改到经过的结点的势能,并将其恢复到 Δ(u)=log(m2m1),因为每次经过的结点数量是 O(logn) 级别的所以这里的复杂度也是正确的 .

于是时间复杂度即为 Θ((n+qlogV)logn),其中 V 是值域 .

向下取整的根号运算

静态 / 花神游历各国

每个数开 loglog 次就没了,于是暴力即可 .

UOJ228 基础数据结构练习题

注意到一个区间进行至多 loglog(m2m1) 次开根后即可变成区间减 .

定义对于线段树上的结点 u,其势能 Δ(u)=loglog(m2m1) .

则一次区间开根对势能的影响就是对于所有在区间内的结点 u,将 Δ(u)max{0,Δ(u)1},代价为所有结点势能减少总量 .

注意到一次区间加只会修改到经过的结点的势能,并将其恢复到 Δ(u)=loglog(m2m1),因为每次经过的结点数量是 O(logn) 级别的所以这里的复杂度也是正确的 .

于是时间复杂度即为 Θ((n+qloglogV)logn),其中 V 是值域 .

JRKSJ R1 吊打

开方再平方结果不一定一样 .

平方再开方是一样的 .

然后你应该会了吧 .

Segment Tree Beats!

区间加

看后面那个题,第二个操作 ai+i 改成 ai+k .

具体方法大家应该都会,

复杂度

CTT2021 Day 2 简单数据结构

我不会做啊,摆上这道题以显示我的闲话很完备……

posted @   yspm  阅读(78)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 单线程的Redis速度为什么快?
· 展开说说关于C#中ORM框架的用法!
· Pantheons:用 TypeScript 打造主流大模型对话的一站式集成库
· SQL Server 2025 AI相关能力初探
· 为什么 退出登录 或 修改密码 无法使 token 失效
😅​
点击右上角即可分享
微信分享提示