转自:https://www.bilibili.com/video/BV12E411c7QH

一,引入

(a+b)%p = (a%p + b%p) %p

(a - b) %p = ( a%p + b%p) %p

(a * b) %p = ( a%p * b%p) %p

(a / b) %p = ( a%p / b%p) %p

上式中,第四个是不成立的,即除法不存在逆元。这就让计算 (a / b) %p 变的十分复杂,

因为:

① 分配律的好处:可以在大数运算时候先取余让数变小,在进行加减乘运算

② 除法的弊端 :除法会掉精度

于是就有人想出乘法的逆元来解决这个问题。

二,乘法逆元

1,定义:若在 mod p 的情况下,对于一个整数 a,有 a*x ≡ 1 (mod p),那么这个整数 x 即为 a 的乘法逆元,同时 a 也为 x 的乘法逆元   (  ≡ 表示 同余;(mod p) 表示  该式子在两边都 mod p 的情况下成立)

2,充要条件:a 存在 mod p 的乘法逆元的充要条件是 gcd ( a , p ) = 1,即 a 与 p 互质。

3,应用:求取 (a / b) %p。该值 等同与 a*(b 的逆元) % p

4,证明:( a/b ) % p = a*(b 的逆元) % p

设 b 的逆元 为 x,则  b*x ≡ 1 ( mod p ),可以把 x 认为是  b 在数论上的倒数

式子 ① :(a / b) %p = m,即(a / b)≡  m (mod p)

将 ① * b * x 得:   a * x %p = m * b * x %p,

因为:b*x ≡ 1 ( mod p )

所以有:a * x  ≡ m ( mod p )

所以有:a * x  ≡ m ≡ a / b  ( mod p )

5,费马小定理

可以用来求 b 的逆元:

费马小定理:假如 a 是一个整数, p 是一个质数(在竞赛通常 p 为 质数,因为 p 不为质数时容易找到余数的规律),那么

1,如果 a 是 p 的倍数,a^p ≡ a (mod p)

2,如果 a 不是 p 的倍数,a^(p-1) ≡ 1 (mod p)

同余式:a ≡ b (mod n) 表示 a,b 都模 n 后的值相等

因为 乘法逆元必须满足,a p 互质,所以只需要考虑第二种情况。

由 2 可得:a * a^(p-2) ≡ 1 ( mod p )

所以 a%p * (a^(p-2) % p) = 1 %p

即 a^(p-2) % p 为 a 的逆元,其中 p-2 次方可用快速幂求解。

6,总结:

( a/b ) % p = a*(a^(p-2) % p) % p

=========== ========== ========= ========= ======== ====== ==== === == =

水调歌头 (宋)辛弃疾

我饮不须劝,正怕酒尊空。别离亦复何恨,此别恨匆匆。

头上貂蝉贵客,花外麒麟高冢,人世竟谁雄。一笑出门去,千里落花风。

孙刘辈,能使我,不为公。余发种种如是,此事付渠侬。

但觉平生湖海,除了醉吟风月,此外百无功。毫发皆帝力,更乞鉴湖东。

乘法逆元 java_乘法逆元相关推荐

  1. 乘法逆元 java_乘法逆元的求法(5种)

    若a*b≡1(mod p) 即a,b互为mod p意义下的逆元 即(x/a)%p应为x*b%p 一.扩展欧几里得求逆元 根据a*b+p*k=1 板子O(logN): 1 #include 2 type ...

  2. c语言 乘法运算符,C 乘法运算符

    C 乘法运算符 11/04/2016 本文内容 乘法运算符执行乘法 (*).除法 (/) 和余数 (%) 运算 . 语法 multiplicative-expression:     cast-exp ...

  3. 计算机中的乘法函数公式,教程方法;excel乘法函数_excel乘法公式电脑技巧-琪琪词资源网...

    琪琪词资源网-教程方法;excel乘法函数_excel乘法公式电脑技巧,以下是给大家带来的教程方法;excel乘法函数_excel乘法公式,大家可以了解一下哦! excel乘法函数 Excel中经常会 ...

  4. matlab矩阵乘法结果出错,为啥矩阵乘法显示矩阵乘法维度不正确?是什么原因?...

    EDA365欢迎您登录! 您需要 登录 才可以下载或查看,没有帐号?注册 x 为啥矩阵乘法显示矩阵乘法维度不正确?是什么原因?代码如下: 7 ^$ @: y: ^, w) ^1 S # `/ S: I ...

  5. 算法分析c语言大整数乘法,大整数乘法浅析(C语言实现)

    1.引言 最近在做学校网上的OJ题时,碰到了高精度加法和乘法的运算.加法没有太多实现上的困难,但是乘法却卡了一会儿,在网上搜集材料时,很多都是直接贴上了代码,没有具体的分析.为了巩固自己的学习成果并且 ...

  6. 乘法逆元 java_浅谈乘法逆元(示例代码)

    浅谈乘法逆元 乘法逆元,一般用于求解(frac{A}{C}(mod ~ P))的值,因为我们通过模的定义可以知道上式显然不等于(frac{A \% P}{B \% P}).例子有很多不再举了.那么如果 ...

  7. 逆元~(乘法逆元及其应用)

    数论倒数,又称逆元(因为我说习惯逆元了,下面我都说逆元) 先来引入求余概念 (a +  b) % p = (a%p +  b%p) %p  (对) (a  -  b) % p = (a%p  -  b ...

  8. 逆元java_逆元 - 阿聊 - 博客园

    每个数a均有唯一的与之对应的乘法逆元x,使得ax≡1(mod n) , 一个数有逆元的充分必要条件是gcd(a,n)=1,此时逆元唯一存在 . 逆元的含义:模n意义下,1个数a如果有逆元x,那么除以a ...

  9. HTML用乘法函数,Excel乘法函数的使用方法和详细步骤

    Excel是一款非常强大的办公软件,其应用非常广泛.我们在日常工作中经常都要用到Excel,使用Excel进行处理大型数据的表格,要在数据上计算就会使用到数据上相乘,这时候我们就需要使用乘法的函数,那 ...

最新文章

  1. SpringMVC-Mybatis学习总结整理(下)
  2. python代码壁纸-Python爬取高清壁纸
  3. 前端学习资料(书籍和视频)
  4. mysql 除去列名打印_sql – 使用beeline时避免在列名中打印表名
  5. 设计OA系统的用户-角色-权限分配
  6. 移动通信原理学习笔记之二—— 移动通信中的调制解调技术
  7. fragstats4.2使用
  8. 测试项目实战----RuoYi后台管理系统
  9. xp系统计算机配置在哪里设置,XP系统电脑进行声卡设置的方法介绍
  10. Spring + JedisCluster操作Redis(集群)
  11. kaggle 入门:逻辑回归应用之Kaggle泰坦尼克之灾
  12. 【081】Remove-无需注册的在线免费抠图工具
  13. 零基础学Docker【3】 | 一文带你快速进行Docker实战
  14. pm961 mysql_搭建Memcache服务详解
  15. 安卓一键新机改串软件的原理是什么
  16. 【网络知识】千兆网传输速度125MB/s、百兆网12.5MB/s,码率、比特率、带宽、文件大小M就是MB
  17. 程序员他们也可以很可爱幽默
  18. 四川省通江中学2021年高考成绩查询,「通江中学」2021年年通江中学升学率高不高?...
  19. 统计学的Python实现-010:四分位距
  20. Java中间件-Elasticsearch

热门文章

  1. 分享我的电子藏书:Windows编程(共4本)
  2. 【数据分析案例】2020年亚马逊商品评论数据分析
  3. 龙城战魂--ios技术支持
  4. AutoLock--蓝牙WiFi自动解锁唤醒mac
  5. LVS工作原理以及三种工作模式详解
  6. 尚学堂java 个人参考答案 第九章 主要是编码题
  7. python英文聊天机器人(亲测可用)
  8. 移动CM101s_MV100_EMMC_M8233_强刷后全分区线刷固件包
  9. Kubectl基础命令的使用
  10. 百度尹世明:人工智能规模化应用的核心是ABC+X架构