传送门:http://acm.jlu.edu.cn/joj/showproblem.php?pid=1600
思想:求幂的时候,每次乘法都取模,避免溢出,但如果用for循环会超时,所以要用二分的方法求幂。
快速幂取模的核心代码:
for (k = 1, a = a % m; p; p >>= 1, a = a * a % m)
if (p & 1) k = k * a % m;
其中,k % m就是结果
传送门:http://acm.jlu.edu.cn/joj/showproblem.php?pid=1600
思想:求幂的时候,每次乘法都取模,避免溢出,但如果用for循环会超时,所以要用二分的方法求幂。
快速幂取模的核心代码:
for (k = 1, a = a % m; p; p >>= 1, a = a * a % m)
if (p & 1) k = k * a % m;