初等数论(exgcd 中国剩余定理 卢卡斯定理)

news/2025/2/11 16:25:09/文章来源:https://www.cnblogs.com/Garbage-fish/p/18710017

本文原在 2025-02-08 07:35 发布于本人洛谷博客。

〇、整除

定义 \(b\mid a\Leftrightarrow a\bmod b=0\)

  1. 求证:\(c\mid a\)\(c\mid b \Rightarrow c\mid (a+b),c\mid ab\)

证明:设 \(a=k_1c,b=k_2c,\therefore a+b=c(k_1+k_2),ab=c^2k_1k_2\)

一、辗转相除法

  1. 求证:\(\gcd(a,b)=\gcd(b,a\bmod b)\)

证明:设 \(a\bmod b=c\),即 \(a=kb+c\)

\(\therefore c=a-kb\)

\(d\mid a,d\mid b\)

\(\therefore d\mid kb\)\(\therefore d\mid c\)

\(\therefore a,b\) 的公因数,均为 \(a\bmod b\) 的因数,即均为 \(b,a\bmod b\) 的公因数。

\(d'\mid b,d'\mid c\)

\(\therefore d'\mid kb\)\(\therefore d'\mid a\)

\(\therefore b,a\bmod b\) 的公因数,均为 \(a\) 的因数,即均为 \(a,b\) 的公因数。

\(\therefore \gcd(a,b)=\gcd(b,a\bmod b)\)

二、裴蜀定理

  1. 求证:\(ax+by=\gcd(a,b)\) 有整数解。

证明:https://oi-wiki.org/math/number-theory/bezouts/。

三、exgcd

  1. \(ax+by=\gcd(a,b)\) 的一组整数解。

解:设已知 \(bx'+(a\bmod b)y'=\gcd(b,a\bmod b)\) 的一组整数解 \(x',y'\)

\(\because \gcd(a,b)=\gcd(b,a\bmod b)\)

\(\therefore ax+by=bx'+(a\bmod b)\times y'\)

\(\therefore ax+by=bx'+(a-\left\lfloor\frac{a}{b}\right\rfloor\times b)\times y'\)

\(\therefore ax+by=ay'+b(x'-\left\lfloor\frac{a}{b}\right\rfloor\times y')\)

  1. \(a,b\) 互质,求 \(a\) 在模 \(b\) 意义下的逆元 \(x\),即求 \(ax\equiv 1\pmod b\) 的一个解。

解:原方程等价于 \(ax+by=1\),其中 \(y<0\)

\(\gcd(a,b)=1\),所以 exgcd 可求。

  1. 求证:\(ax+by=c\) 有整数解 \(\Leftrightarrow \gcd(a,b) \mid c\)

证明:

①充分性:设 \(d=\gcd(a,b)\),则 \(a=k_1d,b=k_2d\)

\(\therefore c=ax+by=d(k_1x+k_2y)\)

\(\therefore d\mid c\)

②必要性:\(\because\) 由裴蜀定理,\(ax+by=d\) 有整数解。

\(\therefore a\times \frac{cx}{d}+b\times \frac{cy}{d}=c\)

\(\because d\mid c\)\(\therefore \frac{cx}{d},\frac{cy}{d}\) 是整数。

  1. \(ax+by=c\) 有解:

(1)求其的一组特解 \(x',y'\)

解:由 exgcd 易求 \(ax+by=\gcd(a,b)\) 的一组解 \(x_0,y_0\)

\(\because ax+by=c\) 有解,\(\therefore\gcd(a,b)\mid c\)

\(\therefore a\times \frac{cx_0}{\gcd(a,b)}+b\times \frac{cy_0}{\gcd(a,b)}=c\)

\(\therefore\) 解得 \(\left\{\begin{matrix}x'= \frac{cx_0}{\gcd(a,b)}\\ y'=\frac{cy_0}{\gcd(a,b)}\end{matrix}\right.\)

(2)求其的通解公式。

解:设 \(a(x+m)+b(y+n)=c\),化简得 \(am+bn=0\)

\(d=\gcd(a,b)\)。易得 \(\left\{\begin{matrix}m=k\times \frac{b}{d}\\n=-k\times \frac{a}{d} \end{matrix}\right.\)

(3)找出解的个数,判断是否有解满足 \(x>0,y>0\)

解:即 \(x'+m>0,y'+n>0\)

化简得 \(\left\lceil\frac{-dx'+1}{b}\right\rceil\le k\le \left\lfloor\frac{dy'-1}{a}\right\rfloor\)

解的个数即为 \(k\) 的个数。

\(k\) 存在,则有解满足上述条件。

(4)分别给出 \(x\)\(y\) 最小的正整数值。

解:由一次函数,\(x\) 随着 \(k\) 增大而增大,\(y\) 随着 \(k\) 增大而减小。

四、中国剩余定理

求解以下方程组:

\[x\equiv a_i\pmod{b_i} \]

有如下方法:

  1. \(mod=\prod b_i\),令 \(m_i=mod\div b_i\)

  2. 求模 \(b_i\) 意义下的 \(m_i^{-1}\),记作 \(m'_i\)

  3. 答案为 \((\sum a_im_im'_i)\bmod mod\)

求证:以上方法的正确性。

证明:若 \(i\ne j\),则由构造方式,有 \(b_i\mid m_j\),即 \(m_j=0\pmod{b_i}\)

\(\therefore a_jm_jm_j'=0\pmod{b_i}\)

\(i=j\),则 \(m_im_i^{-1}=1\pmod{b_i}\)

综上,\(x\equiv \sum a_jm_jm'_j\equiv a_i+\sum_{i\ne j}a_jm_jm'_j\equiv a_i\pmod{b_i}\)

五、卢卡斯定理

\[C_n^m\equiv C_{\left\lfloor n\div p\right\rfloor}^{\left\lfloor m\div p\right\rfloor}\times C_{n\bmod p}^{m\bmod p}\pmod p \]

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

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

相关文章

网络流 笔记

本文原在 2024-07-22 10:17 发布于本人洛谷博客。 一、定义与性质 1. 基本定义 从水厂出发,有很多节点和水管,节点不能存水,但容量无限,水管有容量上限,全部水管最终经过某些节点都会流向某个工厂里,问最多同时能给工厂发多少水? 流网络:这张图。 源点:水厂。 汇点:工…

CentOS7 - firewalld只允许国内ip访问

firewalld只允许国内ip访问 #查看public区域大致情况 firewall-cmd --zone=public --list-all #获取china ip源 wget --no-check-certificate -O- http://ftp.apnic.net/apnic/stats/apnic/delegated-apnic-latest | awk -F\| /CN\|ipv4/ { printf("%s/%d\n", $4, 32…

2025 寒假集训 第二期

2025 寒假集训 第二期 J - Shift and Flip 题意:给出两个 \(01\) 串 \(A,B\) ,要求使两串相等,可以执行以下三种操作将 \(A\) 左移一个单位 将 \(A\) 右移一个单位 选择一个位置 \(i\) 满足 \(B_i=1\) ,使 \(A_i\) 取反求最小操作数。 思路:不可能的情况只有当 \(B\) 全为…

为word中的图片批量添加边框

写报告时,经常会在word中插入几十张甚至是上百张图片,而为了美观,通常会为这些图片添加边框,但一个个添加显然是疯狂且愚蠢的,我们应该做一些更有效率的事情。 使用python-docx来实现我们的操作(由于各种原因,不会选择用宏) 首先观察一下图片加边框前后的文档结构变化(…

DeepSeek本地化部署超简单!快给你的大模型安排上聊天助手吧!

上一篇我们讲了如何把deepseek R1 安装部署到个人电脑上。(感兴趣的请跳转至 https://www.cnblogs.com/AI2025/p/18709288) 但是,我们部署完了发现,如果仅仅是只在黑漆漆的命令行里面去和AI对话聊天,感觉很不人性化,也不好用。那么,有没有更好的和AI交互聊天的工具呢? …

prometheus监控k8s并发送报警

1.编辑prometheus的configmap文件kubectl edit cm prometheus-1738826520-server2.添加如下红色字体apiVersion: v1 data:alerting_rules.yml: |-groups:- name: deployment Monitoringrules:- alert: DeploymentReplicasUnavailableexpr: kube_deployment_status_replicas_una…

VS2022 安装失败 : 未能安装包“Microsoft.VisualStudio.JavaScript.SDK_1.0.1738743,version=1.0.1738743”

VS2022 安装失败,异常提醒: 1、未能安装包“Microsoft.VisualStudio.JavaScript.SDK_1.0.1738743,version=1.0.1738743” 2、未能安装包“Microsoft.Windows.SDK.BuildTools_10.0.26100.1742,version=1.0.0.0” 问题原因,可以直接查看本地安装异常日志文件,文件中的描述应该…

项目管理证书报考条件:不同证书的对比分析

项目管理领域的证书众多,它们在行业内都具有一定的认可度和价值。对于有意投身项目管理行业或提升自身项目管理能力的人来说,了解不同证书的报考条件至关重要。这不仅关系到能否顺利报考,更影响着未来的职业发展方向。接下来,我们将对几种常见的项目管理证书报考条件进行对…

C# 迷宫求解算法,给出思路和例子。

C# 迷宫求解算法 迷宫求解通常可以使用 深度优先搜索(DFS)、广度优先搜索(BFS)、A(A-star)搜索* 或 Dijkstra 算法。以下是几种常见方法的思路及代码示例。1. 迷宫表示 迷宫通常可以使用 二维数组(char[,] 或 int[,])来表示:0 表示可以通过的路径 1 表示墙或障碍物 S(…

No.18 Kappa系数精度评价2.0

# Loading necessary libraries library(openxlsx) library(vcd)# Reading the Excel data AccData <- read.xlsx("D:/R_proj/a绘图demo/bKappa/五指山生态系统分类精度评价一二级类.xlsx",sheet = 1, colNames = T)# Handle missing values (replace NA with 0) …

什么是回溯法,给个C#简单的例子。

回溯法(Backtracking)是一种搜索算法,主要用于解决组合优化问题,如全排列、子集、数独、八皇后问题等。它通过递归的方式尝试所有可能的解决方案,并在发现当前路径无法得到正确答案时回溯到上一步,继续尝试其他路径。 回溯法的基本思想选择:选择一个可能的选项。 约束:…

如何挑选项目型企业管理系统?10款软件为你解答

本文介绍了以下10款项目型企业管理系统:1.Worktile;2.PingCode;3.Teambition;4.石墨文档;5.蓝鲸智云;6.Trello;7.Asana;8.Monday.com;9.Jira;10.Basecamp。在日益复杂的项目管理环境中,很多企业面临一个共同的挑战:如何高效、精准地管理多个项目、协调各方资源,并…