做题记录 25.10.23
\textcolor{black}\odot P5294 [HNOI2019] 序列 \quad LOJ #3059. 「HNOI2019」序列
先考虑静态的情况
根据 IOI2018 集训队论文 高睿泉 《浅谈保序回归问题》 可得以下做法:
- 保存一个单调栈,栈中元素为
(l,r,s) ,从栈底到栈顶\frac s{r-l+1} 单调递增 - 从左到右扫描序列,将
(i,i,a_i) 加入栈顶 - 若不满足单调性则合并(
(l,r,s)+(r+1,t,s_2)\to (l,t,s+s_2) )栈顶两个元素,直到满足单调性 - 答案为
\sum_{(l,r,s)} \sum_{i=l}^r\left(a_i-\frac s{r-l+1}\right)^2
这样得到一个
然后考虑修改的情况
对于修改
令
从大到小枚举
可证
外层二分,内层主席树上二分,总时间复杂度
若离线则可以用扫描线等代替主席树
代码:luogu
参考
QOJ #14549. 造桥与砍树
即边权为
考虑
令
时间复杂度
代码
\blue\odot P11483 [NordicOI 2021] The Elk
边双缩点,不在对应路径上的点合法
时间复杂度
代码
\blue\odot P11604 [PA 2016] 卡牌 / Gra w karty
建立
代码
参考
\blue\odot P11505 [NordicOI 2018] Mysterious Array
处理出每个位置的下界 set 或
从小到大填数,设当前填
容易做到
代码
参考
\blue\odot P11497 [ROIR 2019] 自动仓库 (Day 1)
显然操作次数为
询问左端点连续递增,因此树状数组维护所有位置值是否为最后一次出现,时间复杂度
代码
参考
\blue\odot P11645 【MX-X8-T4】「TAOI-3」Warmth of the Eternity
令
当
然后考虑
依次类推,可得其它的贡献
发现
容易
代码
参考
\blue\odot P11170 「CMOI R1」图上交互题 / Constructive Minimum Xor Path
可证 若存在解则
时间复杂度
代码
\green\odot AT_abc308_f [ABC308F] Vouchers
将
枚举
时间复杂度
代码
参考
\blue\odot P11268 【MX-S5-T2】买东西题
将
时间复杂度
代码
\blue\odot P11277 世界沉睡童话
设
贪心地,令
容易做到
代码
参考