Primitive root

高大上的数论,先入门再说。

原根的定义可以到wiki上找,上面介绍得很清楚。

如果你是个热(bu)爱(dong)祖(ying)国(yu)的人,看这个blog就行了

1、51nod 1135

奇怪的oj,还是放链接

求奇素数n最小的原根。

从2~n-1枚举x,判断x是否满足x^j mod n != 1    j=2,3,4,...,phi(n)-1

暴力判断会T,需要跟快的算法。

wiki介绍了一个方法。

设phi(n)=p1^k1*p2^k2......pm^km

那么x是n的一个原根充要条件为

x^(phi(n)/pj) mod n != 1  j = 1,2,3...m

证明:

若存在j使得x^(phi(n)/pj) mod n = 1,不必说,x不是原根

如不存在j满足条件,假设t满足x^t mod n = 1

那么x^(phi(n)-t) mod n =1

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值