Loading

P5221 Product

\(\text{solution}\)

感觉很难欸。

首先根据我们的瞪眼法不难发现 \(104857601\) 是一个质数,这在后面非常有用。

然后你发现 \(\text{lcm}\) 这东西,我熟啊,直接推柿子:

\[\prod_{i = 1}^n\prod_{j = 1}^n\frac{\text{lcm}(i, j)}{\gcd(i, j)} \]

\[\prod_{i = 1}^n\prod_{j = 1}^n\frac{i \times j}{\gcd(i, j) ^2} \]

\[\frac{\prod_{i = 1}^n\prod_{j = 1}^n{i \times j}}{\left(\prod_{i = 1}^n\prod_{j = 1}^n{\gcd(i, j)}\right)^2} \]

先看分子:

\[\prod_{i = 1}^n\prod_{j = 1}^n{i \times j} \]

\[\prod_{i = 1}^n \left(i^n + n!\right) \]

解释一下这里为什么,你考虑当 \(i\) 不变的情况下,$j = 1, 2, ..., n $ 的情况就 OK 了。

\[(n!)^n \times \prod_{i = 1}^{n} i^n \]

\[(n!)^{2n} \]

然后再看分母(公式警告):

\[\left(\prod_{i = 1}^n\prod_{j = 1}^n{\gcd(i, j)}\right)^2 \]

\[\prod_{d = 1}^n\prod_{i = 1}^n\prod_{j = 1}^n [\gcd (i, j) = d]\gcd(i, j) \]

\[\prod_{d = 1}^n d ^ {\sum\limits_{i = 1}^n\sum\limits_{j = 1}^n[\gcd (i, j) = d]} \]

这里很有道理吧!

然后我们只看指数:

\[\sum\limits_{i = 1}^n\sum\limits_{j = 1}^n[\gcd (i, j) = d] \]

\[\sum\limits_{i = 1}^{\lfloor \frac{n}{d} \rfloor}\sum\limits_{j = 1}^{\lfloor \frac{n}{d} \rfloor}[\gcd (i, j) = 1] \]

我们发现,对于每个 \(i\) 来说,有贡献的只有与他互质的数,这种计数方法在 GCD SUM 这道题里有所体现:

\[2 \times \left(\sum_{i = 1}^{\lfloor \frac{n}{d} \rfloor} \varphi(i)\right) - 1 \]

那么我们便要求:

\[\frac{(n!)^{2n}}{\left(\prod_{d = 1}^n d ^ {2 \times \left(\sum_{i = 1}^{\lfloor \frac{n}{d} \rfloor} \varphi(i)\right) - 1}\right) ^2} \bmod 104857601 \]

然后你提交一发,发现 long long 会炸!所以我们需要用到欧拉定理:

\(\gcd (a, k) = 1\) 时,有 \(a^b = a^{b \bmod \varphi(k)}\),此时我们的模数时质数,所以给指数模一下 \(104857601 - 1\) 就行了。

然后就是疯狂注意细节。

posted @ 2023-05-31 11:41  Alexande  阅读(6)  评论(0)    收藏  举报