专栏文章
爱的飞行日记 题解
P11888题解参与者 5已保存评论 5
文章操作
快速查看文章及其快照的属性,并进行相关操作。
- 当前评论
- 5 条
- 当前快照
- 1 份
- 快照标识符
- @miqqak6z
- 此快照首次捕获于
- 2025/12/04 08:59 3 个月前
- 此快照最后确认于
- 2025/12/04 08:59 3 个月前
简单推式子题,预估难度弱省省选。
本文中时间复杂度 表示预处理复杂度 ,单次询问复杂度 。
首先由 Min-max 容斥有
事实上这个式子由 随便算两下就出来了,不用熟知 Min-max 容斥。
由 Fibonacci 数的性质 ,因此
\prod_{a_1=1}^{m}\prod_{a_2=1}^{m}\cdots\prod_{a_n=1}^{m}\operatorname{lcm}(f_{a_1},f_{a_2},\dots,f_{a_n})&=\prod_{a_1=1}^{m}\prod_{a_2=1}^{m}\cdots\prod_{a_n=1}^{m}\prod_{S\subseteq\{1,2,\dots,n\},S \neq \varnothing}f_{\gcd\{a_i : i \in S\}}^{(-1)^{\lvert S \rvert-1}}\\
&=\prod_{d=1}^{m}f_d^{\sum\limits_{a_1=1}^{m}\sum\limits_{a_2=1}^{m}\cdots\sum\limits_{a_n=1}^{m}\sum\limits_{S\subseteq\{1,2,\dots,n\},S \neq \varnothing}(-1)^{\lvert S \rvert-1}[\gcd\{a_i : i \in S\}=d]}\\
&=\prod_{d=1}^{m}f_d^{\sum\limits_{k=1}^{n}(-1)^{k-1}\binom{n}{k}m^{n-k}\sum\limits_{a_1=1}^{m}\sum\limits_{a_2=1}^{m}\cdots\sum\limits_{a_k=1}^{m}[\gcd(a_1,a_2,\dots,a_k)=d]}\\
&=\prod_{d=1}^{m}f_d^{\sum\limits_{k=1}^{n}(-1)^{k-1}\binom{n}{k}m^{n-k}\sum\limits_{a_1=1}^{\left\lfloor\frac{m}{d}\right\rfloor}\sum\limits_{a_2=1}^{\left\lfloor\frac{m}{d}\right\rfloor}\cdots\sum\limits_{a_k=1}^{\left\lfloor\frac{m}{d}\right\rfloor}[\gcd(a_1,a_2,\dots,a_k)=1]}\\
&=\prod_{d=1}^{m}f_d^{\sum\limits_{k=1}^{n}(-1)^{k-1}\binom{n}{k}m^{n-k}\sum\limits_{a_1=1}^{\left\lfloor\frac{m}{d}\right\rfloor}\sum\limits_{a_2=1}^{\left\lfloor\frac{m}{d}\right\rfloor}\cdots\sum\limits_{a_k=1}^{\left\lfloor\frac{m}{d}\right\rfloor}\sum\limits_{t \mid \gcd(a_1,a_2,\dots,a_k)}\mu(t)}\\
&=\prod_{d=1}^{m}f_d^{\sum\limits_{k=1}^{n}(-1)^{k-1}\binom{n}{k}m^{n-k}\sum\limits_{t=1}^{\left\lfloor\frac{m}{d}\right\rfloor}\mu(t)\left\lfloor\frac{m}{dt}\right\rfloor^{k}}\\
&=\prod_{d=1}^{m}\prod_{t=1}^{\left\lfloor\frac{m}{d}\right\rfloor}f_d^{\mu(t)\sum\limits_{k=1}^{n}(-1)^{k-1}\binom{n}{k}m^{n-k}\left\lfloor\frac{m}{dt}\right\rfloor^{k}}\\
&=\prod_{D=1}^{m}\left(\prod_{d \mid D}f_d^{\mu\left(\frac{D}{d}\right)}\right)^{m^n-\left(m-\left\lfloor\frac{m}{D}\right\rfloor\right)^n}\\
&=\prod_{D=1}^{m}F(D)^{G\left(\left\lfloor\frac{m}{D}\right\rfloor\right)},
\end{aligned}$$
其中
$$F(D)=\prod_{d \mid D}f_d^{\mu\left(\frac{D}{d}\right)},G(k)=m^n-\left(m-k\right)^n.$$
直接朴素预处理 $F$,暴力计算可以做到时间复杂度 $O(m\log m)-O(m\log n)$。
为了优化,可以用整除分块处理上式。我们可以在 $O(\log{n})$ 的时间复杂度下计算 $G(\cdot)$,现在我们考虑较快速计算 $F(D)$。
由于
$$\prod_{i=1}^{D}F(i)=\prod_{d=1}^{D}f_d^{\sum\limits_{i=1}^{\left\lfloor\frac{D}{d}\right\rfloor}\mu(i)},$$
我们可以线性预处理 Fibonacci 数列前缀积和 $\mu(\cdot)$ 前缀和后用整除分块在 $O(\sqrt{D}\log{D})$ 的时间复杂度下计算上式。时间复杂度 $O(m)-O(m^{\frac{3}{4}}\log{n})$。
注意到模数不大,线性预处理出逆元,利用类似 Dirichlet 前缀和的方法计算卷积预处理出 $F(\cdot)$,同时用 Euler 定理优化计算 $k^n$,即可做到 $O(mod+m\log{\log{m}})-O(\sqrt{m}\log{mod})$,空间复杂度 $O(mod+m)$。
---
以上做法已经足够通过本题,但其实不考虑多组询问我们还可以做到更优。以下做法由验题人 wkywkywky 提出。
注意刚才的式子
$$\prod_{i=1}^{D}F(i)=\prod_{d=1}^{D}f_d^{\sum\limits_{i=1}^{\left\lfloor\frac{D}{d}\right\rfloor}\mu(i)},$$
我们只需要求出 $F,f$ 与 $\mu$ 的块筛。其中 $\mu$ 函数前缀和可以用杜教筛做到 $O(v)-O(\frac{m}{\sqrt{v}})$,$f$ 数列前缀积可以用[这道题](https://www.luogu.com.cn/problem/AT_abc381_g)的方法,$O(V+W\log W)$ 预处理,且对于 $m/i>V$,做到 $O(m/W)$ 单次查询。
在处理出 $f$ 和 $\mu$ 的基础上,预处理 $F$ 的前缀积到 $O(w)$,可以做到 $O(w\log\log w\log mod)-O(\frac m{\sqrt w}\log mod)$。平衡复杂度取 $v,V,w=O((m\operatorname{polylog})^{2/3})$,总复杂度约为 $O((m\operatorname{polylog})^{2/3})$,可能常数较大,瓶颈主要在 $F$ 的计算过程中的 $\log mod$,$\mu,f,F$ 三部分的 $\log$ 次数大约分别为 $0,\frac13,1^+$。相关推荐
评论
共 5 条评论,欢迎与作者交流。
正在加载评论...