AcWing 213. 古代猪文 数学知识
2021-02-08 20:16
标签:atom close lap class sum font pre href namespace 传送门 给定整数n,q,计算 $q^{\sum_{d|n} C_{n}^{d}}$ mod 999911659。 输入包括一行,包含两个整数n,q,用一个空格隔开。 输出包括一行,包含一个整数表示最终结果。 1≤n,q≤109 提示:对于n的每一个正因数d,都有一个$C_{n}^{d}$的值,将它们全部加起来得到的和就是$\sum_{d|n} C_{n}^{d}$ 。 题解:经典题,用到的数学知识比较多。 当q为999911659时,答案为0。否则,因为999911659是质数,由欧拉定理推论得: $q^{\sum_{d|n} C_{n}^{d}} \equiv q^{\sum_{d|n} C_{n}^{d} mod 999911658} mod 999911659$ 因此,本题的关键是计算 $\sum_{d|n} C_{n}^{d} mod 999911658$。 n很大,分解质因子可以发现999911658 = 2 * 3 * 4679 * 35617,我们可以用Lucas定理求组合数 $C_{n}^{d}$ ,分别计算出 $\sum_{d|n} C_{n}^{d}$ 对2,3,4679,35617四个质数取模的结果,记为d[1],d[2],d[3],d[4]。 最后用中国剩余定理求解线性同余方程。 $\left\{\begin{matrix} x & mod & 2 & = & a_{1}\\ x & mod & 3 & = & a_{2} \\ x & mod & 4679 & = & a_{3} \\ x & mod & 35617 & = & a_{4} \end{matrix}\right.$ 代码: AcWing 213. 古代猪文 数学知识 标签:atom close lap class sum font pre href namespace 原文地址:https://www.cnblogs.com/l999q/p/11335420.html题目描述:
输入格式
输出格式
数据范围
输入样例:
4 2
输出样例:
2048
#include
文章标题:AcWing 213. 古代猪文 数学知识
文章链接:http://soscw.com/index.php/essay/52792.html