乘法逆元 java_乘法逆元
转自: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_乘法逆元相关推荐
- 乘法逆元 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 ...
- c语言 乘法运算符,C 乘法运算符
C 乘法运算符 11/04/2016 本文内容 乘法运算符执行乘法 (*).除法 (/) 和余数 (%) 运算 . 语法 multiplicative-expression: cast-exp ...
- 计算机中的乘法函数公式,教程方法;excel乘法函数_excel乘法公式电脑技巧-琪琪词资源网...
琪琪词资源网-教程方法;excel乘法函数_excel乘法公式电脑技巧,以下是给大家带来的教程方法;excel乘法函数_excel乘法公式,大家可以了解一下哦! excel乘法函数 Excel中经常会 ...
- matlab矩阵乘法结果出错,为啥矩阵乘法显示矩阵乘法维度不正确?是什么原因?...
EDA365欢迎您登录! 您需要 登录 才可以下载或查看,没有帐号?注册 x 为啥矩阵乘法显示矩阵乘法维度不正确?是什么原因?代码如下: 7 ^$ @: y: ^, w) ^1 S # `/ S: I ...
- 算法分析c语言大整数乘法,大整数乘法浅析(C语言实现)
1.引言 最近在做学校网上的OJ题时,碰到了高精度加法和乘法的运算.加法没有太多实现上的困难,但是乘法却卡了一会儿,在网上搜集材料时,很多都是直接贴上了代码,没有具体的分析.为了巩固自己的学习成果并且 ...
- 乘法逆元 java_浅谈乘法逆元(示例代码)
浅谈乘法逆元 乘法逆元,一般用于求解(frac{A}{C}(mod ~ P))的值,因为我们通过模的定义可以知道上式显然不等于(frac{A \% P}{B \% P}).例子有很多不再举了.那么如果 ...
- 逆元~(乘法逆元及其应用)
数论倒数,又称逆元(因为我说习惯逆元了,下面我都说逆元) 先来引入求余概念 (a + b) % p = (a%p + b%p) %p (对) (a - b) % p = (a%p - b ...
- 逆元java_逆元 - 阿聊 - 博客园
每个数a均有唯一的与之对应的乘法逆元x,使得ax≡1(mod n) , 一个数有逆元的充分必要条件是gcd(a,n)=1,此时逆元唯一存在 . 逆元的含义:模n意义下,1个数a如果有逆元x,那么除以a ...
- HTML用乘法函数,Excel乘法函数的使用方法和详细步骤
Excel是一款非常强大的办公软件,其应用非常广泛.我们在日常工作中经常都要用到Excel,使用Excel进行处理大型数据的表格,要在数据上计算就会使用到数据上相乘,这时候我们就需要使用乘法的函数,那 ...
最新文章
- SpringMVC-Mybatis学习总结整理(下)
- python代码壁纸-Python爬取高清壁纸
- 前端学习资料(书籍和视频)
- mysql 除去列名打印_sql – 使用beeline时避免在列名中打印表名
- 设计OA系统的用户-角色-权限分配
- 移动通信原理学习笔记之二—— 移动通信中的调制解调技术
- fragstats4.2使用
- 测试项目实战----RuoYi后台管理系统
- xp系统计算机配置在哪里设置,XP系统电脑进行声卡设置的方法介绍
- Spring + JedisCluster操作Redis(集群)
- kaggle 入门:逻辑回归应用之Kaggle泰坦尼克之灾
- 【081】Remove-无需注册的在线免费抠图工具
- 零基础学Docker【3】 | 一文带你快速进行Docker实战
- pm961 mysql_搭建Memcache服务详解
- 安卓一键新机改串软件的原理是什么
- 【网络知识】千兆网传输速度125MB/s、百兆网12.5MB/s,码率、比特率、带宽、文件大小M就是MB
- 程序员他们也可以很可爱幽默
- 四川省通江中学2021年高考成绩查询,「通江中学」2021年年通江中学升学率高不高?...
- 统计学的Python实现-010:四分位距
- Java中间件-Elasticsearch