python 幂运算算法实现,欧几里德算法求解RR’ – NN’= 1.利用蒙哥马利算法进行模幂运算,在python或Petite Chez方案中实现Fermat检验...

这在我使用Scheme教授的入门编程课程中是个人挑战,但我对

Python示例同样满意.

我已经在方案中实现了模幂运算的二进制方法,如下所示:

(define (pow base expo modu)

(if (zero? expo)

1

(if (even? expo)

(mod (expt (pow base (/ expo 2) modu) 2) modu)

(mod (* base (pow base (sub1 expo) modu)) modu))))

这是必要的,因为Chez Scheme没有任何类似于python的pow(base expo modu)的实现.

现在我正在尝试实现解决模乘的蒙哥马利方法.举个例子,我有:

Trying to solve:

(a * b) % N

N = 79

a = 61

b = 5

R = 100

a' = (61 * 100) % 79 = 17

b' = (5 * 100) % 79 = 26

RR' - NN' = 1

我试图理解如何解决RR’ – NN’= 1.我意识到R’的答案应该是64而N’应该是81,但是不明白如何使用欧几里德算法得到这个答案.

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值