取模运算的性质

你不可错过的快速幂算法模板超详细整理 快速幂算法1.介绍2.模板3.优化4.终极优化5.例题 1.介绍 快速幂算法能帮我们算出指数非常大的幂,传统的求幂算法之所以时间复杂度非常高(为O(指数n)),就是因为当指数n非常大的时候,需要执行的循环操作次数也非常大。所以我们快速幂算法的核心思想就是每一步都把指数分成两半,而相应的底数做平方运算。这样不仅能把非常大的指数给不断变小,所需要执行的循环次数也变小,而最后表示的结果却一直不会变。 2.模板 ////快速幂算模板 long long fastPower(long base, long long 阅读详情
AI摘要

本文详细介绍了模运算的基本概念,包括取模、模加法、模减法及模乘法,并阐述了同余式的定义及其性质。同时,文中还列举了模运算的基本规则和重要定理。

定义

给定一个正整数p,任意一个整数n,一定存在等式 :
n = kp + r ;
其中 k、r 是整数,且 0 ≤ r < p,则称 k 为 n 除以 p 的商,r 为 n 除以 p 的余数。
对于正整数 p 和整数 a,b,定义如下运算:
取模运算:a % p(或a mod p),表示a除以p的余数。
模p加法: ,其结果是a+b算术和除以p的余数。
模p减法: ,其结果是a-b算术差除以p的余数。
模p乘法: ,其结果是 a * b算术乘法除以p的余数。
说明:
1. 同余式:正整数a,b对p取模,它们的余数相同,记做 或者a ≡ b (mod p)。
2. n % p 得到结果的正负由被除数n决定,与p无关。例如:7%4 = 3, -7%4 = -3, 7%-4 = 3, -7%-4 = -3

基本性质

  1. 若p|(a-b),则a≡b (% p)。例如 11 ≡ 4 (% 7), 18 ≡ 4(% 7)
  2. (a % p)=(b % p)意味a≡b (% p)
  3. 对称性:a≡b (% p)等价于b≡a (% p)
  4. 传递性:若a≡b (% p)且b≡c (% p) ,则a≡c (% p)

运算规则

模运算与基本四则运算有些相似,但是除法例外。其规则如下:
  1. (a + b) % p = (a % p + b % p) % p (1)
  2. (a - b) % p = (a % p - b % p) % p (2)
  3. (a * b) % p = (a % p * b % p) % p (3)
  4. a ^ b % p = ((a % p)^b) % p (4)
  • 结合律:
    ((a+b) % p + c) % p = (a + (b+c) % p) % p (5)
((a*b) % p * c)% p = (a * (b*c) % p) % p (6)
  • 交换律:
    (a + b) % p = (b+a) % p (7)
(a * b) % p = (b * a) % p (8)
  • 分配律:
    ((a +b)% p * c) % p = ((a * c) % p + (b * c) % p) % p (9)

重要定理

  • 若a≡b (% p),则对于任意的c,都有(a + c) ≡ (b + c) (%p);(10)
  • 若a≡b (% p),则对于任意的c,都有(a * c) ≡ (b * c) (%p);(11)
  • 若a≡b (% p),c≡d (% p),则 (a + c) ≡ (b + d) (%p),(a - c) ≡ (b - d) (%p),
    (a * c) ≡ (b * d) (%p),(a / c) ≡ (b / d) (%p); (12)
快速幂第一章(C++递归版本) C++快速幂第一章(递归版本) 阅读详情

相关推荐

模运算(密码学/数论/算法)

模运算的概念模运算是一种算术运算,常写作a mod n,表示整数a除以正整数n后的余数。模数是模运算中的除数n,它决定了结果的范围。公式表达:对于任意整数a和正整数n,可以将a表示为:a = qn + r,其中0 ≤ r < n,q是整数商,即q = ⌊a/n⌋。a除以n的余数是a mod n。示例:11 mod 7 = 4(11除以7的余数是4)** -11 mod 7 = 3(-11除以7的余数是3)**

weixin_45556264的博客 1226

快速幂模板

快速幂 #include<bits/stdc++.h> using namespace std; int Quick_pow(int a,int b) { int ans=1,base=a;// ans:结果;base:底数 while(b) { if(b & 1)//等于b%2==1 { ans=ans*base; } base=base*base; b =

算法小猪的博客 2502

MT6826SGT-STD-R绝对值编码器深度解析:精准控制+灵活编程

本文详细介绍MT品牌的高性能绝对值编码器——MT6826SGT-STD-R。:区别于传统增量式编码器,绝对值输出无需掉电归零,开机即获准确位置数据。的核心优势,结合应用场景与选型指南,为工程师提供一站式解决方案参考。MT6826SGT-STD-R是一款专为工业级精密控制设计的。该设备广泛应用于伺服系统、机器人关节校准、自动化产线等领域。:15bit分辨率实现细腻的位置反馈;:通过专用编写器可自定义多项关键参数;:优化电路设计,适应复杂电磁环境。

2501_93066786的博客 679

(数论专题)【 快速幂 模板详解 】

(数论专题)【 快速幂 模板详解 】 快速幂 %mod怎么快速算出来? 举个例子: 怎么快速算出来呢? 162的二进制为10100010,所以162 = ++ = 128+32+2, 这样 = * * 这样就可以得到下面的代码了; a维护的是 , 上面1,2,4,8,16,就是2的多少次方。。n&1==1的时候表示答案需要乘以这个ai 代码: ll qpow( l...

石旭先森的博客 998

从零到一:Quartus II连接开发板实战,打通绘图、管脚分配、编译与下载全链路

本文详细介绍了使用Quartus II软件连接FPGA开发板并完成首个项目的全流程。从硬件连接到驱动安装,到绘制电路框图、精准分配管脚,再到编译设置与最终下载,手把手指导您打通从设计到硬件实现的完整链路,是FPGA初学者的实战入门指南。

mqtt6iot的博客 717

从零到一:手把手教你用C#开发AGV调度系统(附避坑指南)

本文详细介绍了如何使用C#开发高效的AGV调度系统,涵盖从环境搭建到核心算法实现的完整流程。重点解析了动态路径规划、多机协同等关键技术,并提供了实用的避坑指南和性能优化建议,帮助开发者快速构建工业级车辆控制调度系统。

blockchain9miner的博客 742

取模运算性质_取模运算的性质

对于整型数a,b来说,取模运算或者求余运算的方法都是:1.求 整数商: c = a/b;2.计算模或者余数: r = a - c*b.求模运算和求余运算在第一步不同: 取余运算在取c的值时,向0 方向舍入(fix()函数);而取模运算在计算c的值时,向负无穷方向舍入(floor()函数)。例如:计算-7 Mod 4那么:a = -7;b = 4;第一步:求整数商c,如进行求模运算c = -2(向负...

weixin_29955355的博客 2617

图像去噪实战:Noise2Noise与Noise2Void在医学影像中的应用(附代码)

本文深入探讨了Noise2Noise与Noise2Void在医学影像去噪中的革命性应用,通过自监督学习技术有效解决临床数据配对难题。文章提供详细的代码实现和临床部署方案,展示如何提升低剂量CT、MRI等影像的诊断质量,特别适用于辐射敏感场景和急诊快速处理。

weixin_29092579的博客 242

取模运算性质_模运算的基本性质

基本理论基本概念给定一个正整数p,任意一个整数n,一定存在等式n=kp+r;其中k、r是整数,且0≤r对于正整数p和整数a,b,定义如下运算:取模运算:a%p(或amodp),表示a除以p的余数。模p加法:(a+b)%p,其结果是a+b算术和除以p的余数,也就是说,(a+b)=kp+r,则(a+b)%p=r。模p减法:(a-b)%p,其...

weixin_39886238的博客 349

Dinic算法的复杂度分析及证明

一般图 复杂度主要取决于dfs增广的过程。 将dfs部分的复杂度分成两部分来分析:1)修改增广路上边的流量。至多会增广mmm次,一条增广路的长度至多是nnn,所以这一部分的复杂度是O(nm)O(nm)O(nm)。2)dfs遍历时找增广路失败时经过的边。由于一旦从某条边出发找最短路失败了,我们就不会再走那条边(当前弧优化),所以这一部分的复杂度是O(m)O(m)O(m)的。故而dfs增广的复杂度是O...

这个博客已经搬到了:zhongyuwei.github.io 4392

Apollo control模块横向控制原理及核心代码逐行解析

看完这篇文章,你会对apollo横向控制有一个整体的概念

weixin_39199083的博客 2万+

取模运算性质_取模运算的性质、扩展欧几里德定理

取模运算对于整型数a,b来说,取模运算或者求余运算的方法都是:1.求 整数商: c = a/b;2.计算模或者余数: r = a - c*b.求模运算和求余运算在第一步不同: 取余运算在取c的值时,向0 方向舍入(fix()函数);而取模运算在计算c的值时,向负无穷方向舍入(floor()函数)。例如:计算-7 Mod 4那么:a = -7;b = 4;第一步:求整数商c,如进行求模运算c = -...

weixin_30794381的博客 902

华为OD机试真题 新系统【Skill执行链完整性检测】

华为OD机试 新系统真题【Skill执行链完整性检测】,提供C语言、Java、C++、Python、Go、JavaScript源码实现,并提供完整思路讲解,以及在线OJ模拟做题。华为OD机试真题【Skill执行链完整性检测】

qq_45776114的博客 765

取模运算性质_【转】数学与编程——求余、取模运算及其性质

一、求余运算(Remainder)Euclidean division:Given two integers a and b, with b ≠ 0, there exist unique integers q and r such that a = bq + r and 0 ≤ r < |b|, where |b| denotes the absolute value of b.(术语:...

weixin_35051143的博客 571

高比例风电电力系统储能运行及配置研究(python&Matlab实现)

目录1 概述2 案例3 Matlab实现 3.1 题目及分析3.2 Matlab代码 4 七个题全部代码(值得学习) 下面我们先以第二题为例,然后给出Matlab代码:先考虑风电装机300MW直接替代机组3的发电功率曲线,观察系统功率平衡发生的变化情况。然后在此场景下,以最小发电成本为目标函数,将负荷分配给两台火电机组1、2和风电机组,绘制机组日发电计划图。再将风电装机容量作为一个决策变量,以最小发电成本为目标函数,求取最小发电成本对应的风电装机容量,绘制机组日发电计划图。1. 风电装机300MW、直接

weixin_46039719的博客 1741

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

取模运算性质_数学与编程——求余、取模运算及其性质 | 学步园

一、求余运算(Remainder)http://zh.wikipedia.org/wiki/同余)Euclidean division:Given two integers a and b, with b ≠ 0, there exist unique integers q and r such that a = bq + r and 0 ≤ r < |b|, where |b| denot...

weixin_39828956的博客 199

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

数学与编程——求余、取模运算及其性质

一、求余运算(Remainder) (参考维基百科: http://zh.wikipedia.org/wiki/余数  http://en.wikipedia.org/wiki/Remainder http://en.wikipedia.org/wiki/Euclidean_division http://zh.wikipedia.org/wiki/同余) Euclidean

chensidney‘s blog 1万+

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

取模运算的几条性质

取模运算的几条性质

qq_40659901的博客 583

取模运算性质

定义 给定一个正整数p,任意一个整数n,一定存在等式 : n = kp + r ; 其中 k、r 是整数,且 0 ≤ r &lt; p,则称 k 为 n 除以 p 的商,r 为 n 除以 p 的余数。 对于正整数 p 和整数 a,b,定义如下运算: 取模运算:a % p(或a mod p),表示a除以p的余数。 模p加法: ,其结果是a+b算术和除以p的余数。 模p减法: ,其结果是...

SPIDER的博客 614

取模运算的性质、扩展欧几里德定理

取模运算 对于整型数a,b来说,取模运算或者求余运算的方法都是: 1.求 整数商: c = a/b; 2.计算模或者余数: r = a - c*b. 求模运算和求余运算在第一步不同: 取余运算在取c的值时,向0 方向舍入(fix()函数);而取模运算在计算c的值时,向负无穷方向舍入(floor()函数)。 例如:计算-7 Mod 4 那么:a = -7;b = 4; ...

afvdxhq267883的博客 500

取模运算性质_求余、取模运算在RTOS中计算优先级的理解

uCOS3中的部分源码:/* 置位优先级表中相应的位 */void OS_PrioInsert (OS_PRIO prio){CPU_DATA bit;CPU_DATA bit_nbr;OS_PRIO ix;/* 求模操作,获取优先级表数组的下标索引 */ix = prio / DEF_INT_CPU_NBR_BITS;//32bits//由于数据均为无符号数,...

weixin_39562579的博客 711

取模运算性质_关于取模运算 和 求逆元

先分享2个式子当模式左边有除法:今天了解了2个,感觉这2个很棒~,尤其第一个:1、$\dfrac {a} {b}\% m=\dfrac {a \%\left( b\cdot m\right) } {b}$ 要求:a能整除b。(不知道用了什么奇技淫巧。。。)2、$\dfrac {a} {b}\% m=(a\cdot b^{m-2} )\%m$ 要求:gcd(b , m)== 1 且 m...

weixin_39821605的博客 585
下一篇: 求一个整数的所有因子
varinic
博客等级 码龄11年 23粉丝 78原创
评论 3
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值