220726总结

220726总结

  • 我学会了什么

    1. 利用预处理的前缀积与逆元在 \(O(\log M)\) 的时间内求 \(C_n^m \bmod M\)\(M\) 为质数)
    2. 怎么求卡特兰数
  • 还搞不懂什么

    1. 容斥原理

本日题解

P4139 上帝与集合的正确用法

已知 \(a_n=2^{a_{n-1}}\) ,求 \(a_n \bmod p\)

根据欧拉定理推论可知,由于 \(n\) 趋近于无穷大,所以 \(a_{n-1}\) 也趋近于无穷大,所以满足 \(a_{n-1}\geq\varphi(p)\)

因此 \(2^{2^{2^\cdots}}\equiv 2^{2^{2^\cdots} \bmod \varphi(p)+\varphi(p)} \pmod p\)

根据这个式子我们可以不断地降幂,直到 \(p\) 的值变为 \(1\)

用一个较大的数初始化 \(N\) 后递归求解即可。


P2480 [SDOI2010] 古代猪文

数论全家桶(

\(G^{\sum_{i\mid n}\binom ni }\bmod 999911659\)

\(n\leq10^9,999911659=2\times3\times4679\times35617+1\)是质数

为了方便打公式,设 \(a=G,b=\sum_{i\mid n}\binom ni,p=999911659\)

因为模数为质数,所以可以用欧拉定理 \(a^b \equiv a^{b\bmod\varphi(p)} \pmod p\)

还是因为 \(p\) 是质数,所以 \(\varphi(p)=p-1\)

那么 \(b \bmod \varphi(p)=\sum_{i\mid n}\binom ni\bmod (2\times3\times4679\times35617)\)

根据同余式的性质(如果同余式对于模 \(p\) 成立,那么它对于 \(p\) 的任意约数相等的模 \(d\) 也成立)可得,

\(\left\{\begin{matrix} x \equiv \sum_{d\mid n}\binom{n}{d} \pmod {2} \\ x \equiv \sum_{d\mid n}\binom{n}{d} \pmod {3} \\ x \equiv \sum_{d\mid n}\binom{n}{d} \pmod {4679} \\ x \equiv \sum_{d\mid n}\binom{n}{d} \pmod {35617} \end{matrix}\right.\)

根据 \(\text{Lucas}\) 定理,\(\displaystyle\binom {n}{k} \equiv \binom {\frac{n}{p}}{\frac{k}p{}} \binom {n \bmod p}{k \bmod p} \pmod p\),可以加快求组合数的速度并随时取模

根据中国剩余定理,可解出最小非负整数解 \(x\) ,最后快速幂求 \(G^x\) 即可。


CF1312D Count the Arrays

首先,在 \(m\) 个元素中选 \(n-1\) 个作为序列元素(因为有且仅有一对相同元素),共 \(C_m^{n-1}\) 种方案。

最大的元素是确定的。如果两个相同的元素也确定了,那么剩下的 \(n-3\) 个元素就可以选择放在最大值左侧或右侧,共 \(2^{n-3}\) 种方案。

相同的元素的选取有 \(n-2\) 种方案(\(n-1\) 个元素,去掉一个最大值)。

所以最终答案为 \(C_m^{n-1}\times(n-2)\times2^{n-3}\) 种方案,注意特判 \(n=2\) 无解。


P3200 [HNOI2009] 有趣的数列

这个问题可以转化为将 \(1\sim2n\) 放入序列中,每次只能放在最前的奇数位或偶数位。

由于偶数位上的数一定大于等于其下标,所以在任意时刻偶数位上的数一定少于等于奇数位上的数。

又因为奇数位于偶数位总个数相同。

所以可以用卡特兰数求解。

由于 \(p\) 不是质数,可以将\(2n,n\) 质因数分解后求解。

posted @ 2022-07-26 23:34  Burnling  阅读(15)  评论(0编辑  收藏  举报