CF1768F 题解
2024-09-18 17:10:15
题意
给定长度为 \(n\) 的序列 \(a\),求序列 \(f\),满足:
\[f_i=
\begin{equation}
\begin{cases}
0&(i=1)\\
\min\limits_{j=1}^{i-1}\min\limits_{k=j}^ia_k\times(i-j)^2 &(i>1)
\end{cases}
\end{equation}
\]
\begin{equation}
\begin{cases}
0&(i=1)\\
\min\limits_{j=1}^{i-1}\min\limits_{k=j}^ia_k\times(i-j)^2 &(i>1)
\end{cases}
\end{equation}
\]
\(2\le n\le 4\times10^5,1\le a_i\le n\)。
题解
这种样式看起来很适合斜率优化或四边形不等式优化。但尝试后不可行。注意到 \(a_i\le n\) 的条件,尝试从值域下手(根号分治)。
显然转移点 \(j\) 满足 \(i-j\le\frac{n}{\min_{k=j}^ia_k}\)。则若 \(\min_{k=j}^ia_k>\sqrt n\),\(i-j<\sqrt n\)。于是以下考虑 \(\min_{k=j}^ia_k\le\sqrt n\)。
给出一个结论,若 \(\exist t\in(i,j),a_t=\min_{k=j}^ia_k\),则 \(i\) 必不为转移点。证明显然。则若 \(\min_{k=j}^{i-1}a_k=\min_{k=j}^ia_k\),仅有 \(\sqrt n\) 个可能的 \(j\)。
那么仅剩 \(\min_{k=j}^{i-1}a_k>a_i\) 的情况。利用笛卡尔树易证共有 \(n\sqrt n\) 种,均摊 \(\sqrt n\)。于是此题得解。
最新文章
- zookeeper_service 出错 ........... are only available on JDK 1.5 and higher
- 字符串链接strcat
- 二代身份证阅读器(XZX)
- HDU 1394 Minimum Inversion Number
- dreamvc框架(一)ioc容器的集成
- class A<;T>; where T:class 这个泛型类中的Where T:class什么意思
- coding.net解决github上下载速度慢问题
- 软件快速开发平台 WebBuilder 6.8
- Inno Setup入门(十八)&mdash;&mdash;Inno Setup类参考(4)
- v-for 在 VSCode 中出现 Elements in iteration expect to have &#39;v-bind:key&#39; directives.
- Codeforces Round #553 (Div. 2) C. Problem for Nazar 数学
- [Linux]Linux下Apache服务器配置
- java 多线程之:join() 方法
- spring boot获取前端参数四种方法
- Onject.Instantiate实例
- Android多媒体之照相机
- 如何写科技论文How to write a technical paper
- [leetcode] 3. Pascal&#39;s Triangle
- ORACLE中关于 char 和 varchar2 的比较
- P4234 最小差值生成树