
快速幂
stdwal
天演在化,功成在学。知海无涯,见花问道。
展开
-
POJ3641-Pseudoprime numbers
题目给出两个数p, a,要求根据费马小定理检验p是不是个伪素数。 用快速幂来做。 另外,不能直接将a^p == a(mod p)化成a^p-1 == 1(mod p)来做,因为转换的条件是a不是p的倍数。(贡献一wa) #include bool isprime(int n) { for (int i = 2; i * i <= n; i++) { if (n %原创 2016-07-22 16:24:02 · 214 阅读 · 0 评论 -
POJ1995-Raising Modulo Numbers
使用模运算定律和快速幂即可。 #include long long mod_pow(long long x, long long n, long long mod) { long long res = 1; while (n > 0) { if (n & 1) { res = res * x % mod; }原创 2016-07-22 16:56:36 · 321 阅读 · 0 评论