算法刷题应用知识补充---数论

这里写目录标题

  • 快速幂求a^k%p
  • 快速幂求逆元
  • 扩展欧几里得求逆元
  • 排列组合
    • 二级目录
  • 一级目录
    • 二级目录
    • 二级目录
    • 二级目录
  • 一级目录
    • 二级目录
    • 二级目录
    • 二级目录
  • 一级目录
    • 二级目录
    • 二级目录
    • 二级目录

快速幂求a^k%p

在这里插入图片描述

主要用到a的k次方,可以用多个a的(2的某次)次方的乘积来表示,只需要看次方k的二进制哪些位是1,就相应的乘上该循环步的a

知识点1:要注意如果数的范围很大,那么每两个数相乘,就要将第一个数转为LL,且在最后取模
知识点2:循环条件是k不为0,因为每次处理完之后,k都会去除一位二进制位

快速幂求逆元

在这里插入图片描述
在这里插入图片描述

知识点1:适用条件:当模为质数时,才可以使用快速幂求逆元。
知识点2:a在mod p时的逆元,等于 qmi(a, p - 2, p),即a * qmi(a,p - 2, p) = 1 (mod p)
知识点3:要判断是否有解,若a%p!=0,则有解,否则,无解

扩展欧几里得求逆元

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

知识点1:与快速幂求逆元相对应,他对模没有要求,所以,当模不是质数时,可以使用扩展欧几里得算法求逆元
知识点2:首先是对gcd算法的展开以及扩展
知识点3:该算法可以求线性同余方程,ax在mod m的情况下,余数是b。可以求出x
他的具体算法过程见“算法一栏”
这里的应用是,将a,m,x,y带入exgcd,得到函数的返回值是gcd(a, m),且x和y会引用返回,其中,x就是我们要找的值的初态,我们还要对其处理。
这里要判断,是否真正要得到的余数b是gcd(a,m)的倍数,如果不是,那么无解,如果是,则结果是x乘上倍数,即x * (b / d),这就是我们要找的x

据此,如果将b换成1,那么就变成了ax在mod m的情况下,余数是1,即x是a在mod m下的逆元

排列组合

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

求Cab,使用其阶乘公式,Cab = a!/b!*(a - b)!

知识点1:求阶乘:预处理所有的数的阶乘,以及逆元阶乘,首先初始化fact[0] = infact[0] = 1
之后 i 从1到N,每个fact[i] = fact[i - 1] * i 最后% p
infact[i] = infact[i - 1] * qmi(i, p - 2, p) 最后 % p
然后加个快速幂算法即可

知识点2:从这里我们也可以看出,如果单纯求阶乘,则fact[0] = 1,之后 i 从1到N,每个fact[i] = fact[i - 1] * i

二级目录

一级目录

二级目录

二级目录

二级目录

一级目录

二级目录

二级目录

二级目录

一级目录

二级目录

二级目录

二级目录

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/806933.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

fastadmin + laragon + nginx的后台访问路径配置

使用过fastadmin的小朋友都知道, fastadmin 默认的是不能访问admin模块的, 它在public 文件夹中又新建了一个 XXX.php 来指向 admin 模块的,作用像 index.php 的文件 以前我每次使用的时候,直接就到 config配置文件中把 admin 模块…

String类(1)

❤️❤️前言~🥳🎉🎉🎉 hellohello~,大家好💕💕,这里是E绵绵呀✋✋ ,如果觉得这篇文章还不错的话还请点赞❤️❤️收藏💞 💞 关注💥&a…

CC工具箱使用指南:【融合同类碎图斑】

一、简介 在一些经过不合理处理的数据中,经常会存在碎图斑,正常情况下用【融合】或【消除】工具即可解决。 但是【融合】工具会融掉无关的字段,【消除】工具则会将碎图斑融给不同用地类型的图斑。 如下图所示,因为B1面积更大&a…

蓝桥杯嵌入式(G431)备赛笔记——PWM+LCD+按键

目录 题目要求(真题): cubeMX配置: 小试牛刀: Keil代码: 效果演示: 题目要求(真题): 使用第十一届第二场真题,练习PWM波部分的代码&#xff0c…

德国FSL18罗德与施瓦茨频谱分析仪

181/2461/8938产品概述: 频率范围:9 kHz至18 GHz(超范围至20 GHz)频率分辨率:1赫兹28 MHz的信号分析带宽低测量不确定性,即使在微波范围内通用测量应用,例如光谱图轻巧紧凑,便于现场安装、维护和服务 9 kH…

什么是企业邮箱?企业邮箱和个人邮箱的区别是什么?

拥有一个企业邮箱究竟能给公司带什么益处?这是许多中小企业管理者好奇的,很多人觉得邮箱只要用来收发邮件就够了。但实际上,什么是企业邮箱?企业邮箱和个人邮箱在功能范围有着很大的区别。好的企业邮箱不仅能提高公司内部的沟通效…

【电控笔记5】电流环pi参数整定

旋转坐标系下的电压方程,由id和iq计算出ud和uq 把常数项(上面两个红框)拿出来解耦合,作为前馈,如下 电流环传递函数 电流带宽 响应时间 另一种方法:内膜控制器

RISC-V特权架构 - 中断注入

中断注入 1 中断注入的作用2 mip寄存器3 中断注入后的处理过程 本文属于《 RISC-V指令集基础系列教程》之一,欢迎查看其它文章。 1 中断注入的作用 中断注入,就是在M模式下,手动向S模式去产生一个中断。 比如:向mip寄存器的bit5…

Web前端开发——Vue概述

前言: 整理下学习笔记,打好基础,daydayup!!! Vue Vue是一套前端框架,基于MVVM(Model-View-ViewModel)思想,实现数据的双向绑定,将编程的专注点放在数据上,可以免除原生JavaScript中的DOM操作&am…

600MA线性锂电池充电芯片 - YB4054DJ

描述: YB4054一款完整的单节锂离子电池充电器。其SOT23-5的封装与较少的外部元件数使得YB4054成为便携式应用的理想选择。采用了内部PMOSFET架构,加上防倒充电路,不需要外部检测电阻器和隔离二极管。热反馈可对充电电流进行自动调节,以便在大…

基于Linux C++多线程服务器 + Qt上位机开发 + STM32 + 8266WIFI的智慧无人超市

前言 针对传统超市购物车结账排队时间长、付款效率低的问题,提出了一种更符合现代社会人们购物方式-基于RFID的自助收银系统。习惯了快节奏生活的人们都会选择自助收银机结账,理由显而易见:自助收银机结账很方便,几乎不用排队&am…

“反正你又看不到,少写一行又何妨......”

单链表专题 1.链表的概念及结构2. 实现单链表3. 链表的分类 1.链表的概念及结构 概念:链表是⼀种物理存储结构上⾮连续、⾮顺序的存储结构,数据元素的逻辑顺序是通过链表中的指针链接次序实现的 。 链表的结构跟火车车厢相似,淡季时⻋次的⻋厢…

GraphQL API-通过未被净化的参数获取隐私信息

GraphQL API-通过未被净化的参数获取隐私信息 Lab: Accessing private GraphQL posts实验前置必要知识点 在GraphQL端点发送任何query{__typename},它将在其响应中的某处包含{"data": {"__typename": "query"}}字符串,这…

JZM-A系列机械隔膜计量泵

引言: 在现代工业生产过程中,对流体材料的精准计量和输送需求日益提高。面对这一挑战,JZM-A系列机械隔膜计量泵以其卓越的设计、准确的计量能力和高效的性能,为各行各业提供了一种可靠的解决方案。本文将详细解析JZM-A系列计量泵的…

数字社交的新典范:解析Facebook的成功密码

在当今数字化时代,社交媒体已经成为人们日常生活的重要组成部分,而Facebook作为最知名的社交媒体平台之一,其成功之处备受瞩目。本文将深入解析Facebook的成功密码,探讨其在数字社交领域的新典范。 1. 用户体验的优化 Facebook注…

6.1Python之字典的初识

【1】字典的创建与价值 字典(Dictionary)是一种在Python中用于存储和组织数据的数据结构。元素由键和对应的值组成。其中,键(Key)必须是唯一的,而值(Value)则可以是任意类型的数据。…

ue4打包多模块

首先,每个模块,包含插件内的模块在内,都要用IMPLEMENT_MODULE(类名, 模块名)的方式,模块名就是带.build.cs的第一个单词。 build.cs里就说了这个模块该怎么用,用c#编写。 打包中要考虑到target.cs,将工程中相应的模块…

花花省V6淘宝客APP社交电商自营商城聚合优惠券系统

首页广告位、淘口令识别、微信登录、淘宝登录、淘宝返佣、拼多多返佣、京东返佣、唯品会返佣、热销榜、聚划算、天猫超市、9.9包邮、品牌特卖、新人攻略 、小米有品、优惠加油、阿里巴巴、去哪网、电影票、飞猪旅行、美团酒店、当当网、肯德基、热门抖货、商品推荐、商品详情、…

基于Springboot + vue +MySQL 留守儿童爱心网站 (含源码)

目录 📚 前言 📑摘要 📑系统架构 📚 数据库设计 💬 志愿活动属性图 💬 爱心捐赠实体属性 📚 系统功能的具体实现 💬 系统功能模块 宣传新闻 志愿活动 💬 管理员功…

基于java+springboot+vue实现的售楼管理系统(文末源码+Lw)23-255

摘 要 现代经济快节奏发展以及不断完善升级的信息化技术,让传统数据信息的管理升级为软件存储,归纳,集中处理数据信息的管理方式。本售楼管理系统就是在这样的大环境下诞生,其可以帮助管理者在短时间内处理完毕庞大的数据信息&a…