同余 逆元
Apink233
这个作者很懒,什么都没留下…
展开
-
素数打表的四种解法
题目:给出一个正整数n,打印出所有从1~n的素数(即质数); 1.傻瓜解法 复制代码 int i,n; while(scanf("%d",&n)!=EOF) { for(i=2;i<n;i++) if(n%i==0) break; if(i==n) printf("YES\n"); e...转载 2018-07-29 10:55:56 · 165 阅读 · 0 评论 -
51nod 1136 欧拉函数
对正整数n,欧拉函数是少于或等于n的数中与n互质的数的数目。例如euler(8)=4,因为1,3,5,7均和8互质。 Euler函数表达通式:euler(x)=x(1-1/p1)(1-1/p2)(1-1/p3)(1-1/p4)…(1-1/pn),其中p1,p2……pn为x的所有素因数,x是不为0的整数。euler(1)=1(唯一和1互质的数就是1本身)。 欧拉公式的延伸:一个...转载 2018-06-11 22:31:11 · 114 阅读 · 0 评论 -
51nod1135原根
设 m 是正整数,a是整数,若a模m的阶等于φ(m),则称 a 为 模m的一个原根。(其中φ(m)表示m的欧拉函数) 阶:gcd(a,m)=1,使得成立的最小的 r,称为 a 对 模m 的 阶。 φ(m):在[1,m)的区间内与m互质的数的个数。 求模素数p的原根a的方法: 因为p为素数,所以φ(p)=p-1, 这题就是要找最小的a使得 a^(p-1)%p = 1 成立(根据费马小定理,该...转载 2018-06-11 21:54:49 · 213 阅读 · 0 评论 -
3的幂的和 51nod 1013
#include<stdio.h> long long quickpow(long long a,long long b,long long c) { long long ans=1; while(b) { if(b&1) ans=ans*a%c; b/=2; a=a*a%c; } return ans; } long long X,y; ...原创 2018-07-24 15:46:55 · 139 阅读 · 0 评论