首页 > 其他分享 >「Note」数论方向 - 同余相关

「Note」数论方向 - 同余相关

时间:2023-08-14 10:14:38浏览次数:38  
标签:right end gcd 数论 dfrac Note ax cases 同余

1. 扩展欧几里得算法

1.1. 介绍

扩展欧几里得算法用于求 \(ax+by=\gcd(a,b)\) 的一组特解(整数解)。
推导如下:
设 \(\begin{cases}ax_1+by_1=\gcd(a,b)\\bx_2+(a\mod b)y_2=\gcd(b,a\mod b)\end{cases}\)
由欧几里得算法可知 \(\gcd(a,b)=\gcd(b,a\mod b)\)。
联立有:

\[ax_1+by_1=bx_2+(a\mod b)y_2 \]

\[ax_1+by_1=bx_2+(a-\left\lfloor\dfrac{a}{b}\right\rfloor\times b)y_2 \]

\[ax_1+by_1=ay_2+b(x_2-\left\lfloor\dfrac{a}{b}\right\rfloor\times y_2) \]

可得:

\[\begin{cases}x_1=y_2\\y_1=x_2-\left\lfloor\dfrac{a}{b}\right\rfloor\times y_2\end{cases} \]

最后在求 \(\gcd\) 的过程中求解 \(x,y\) 即可。

1.2. 常见技巧

二元一次不定方程通解

对于 \(ax+by=c\) 这种一元二次不定方程,由裴蜀定理可知,当 \(\gcd(a,b)\nmid c\) 时,此方程无整数解
当有整数解时,我们将其转化为 \(ax+by=\gcd(a,b)\) 的形式,然后用扩展欧几里得算法求解。
我们设扩展欧几里得算法求出的解为 \(X,Y\),\(ax+by=c\) 方程所求的一组特解为 \(x',y'\),有:

\[\begin{cases}x'=\dfrac{Xc}{\gcd(a,b)}\\y'=\dfrac{Yc}{\gcd(a,b)}\end{cases} \]

因为 \(ax'\) 与 \(by'\) 的和恒为 \(c\),有:

\[a(x'+db)+b(y'-da)=c \]

其中,我们要保证 \(x'+db,y'-da\) 均为整数,取得最小变化量:

\[\begin{cases}d_x=\dfrac{b}{\gcd(a,b)}\\d_y=\dfrac{a}{\gcd(a,b)}\end{cases} \]

最后得出通解形式:

\[\begin{cases}x=x'+sd_x\\y=y'+sd_y\end{cases} \]

接下来是关于正整数解的内容。
限制 \(x,y>0\),解得:

\[\left\lfloor\dfrac{-x'+1}{d_x}\right\rfloor\le s\le\left\lceil\dfrac{y'-1}{d_y}\right\rceil \]

至此,我们可以判断正整数解个数。当 \(s\) 取极值时,我们也可求出 \(x,y\) 的极值。

标签:right,end,gcd,数论,dfrac,Note,ax,cases,同余
From: https://www.cnblogs.com/Eon-Sky/p/17627773.html

相关文章

  • 数论题目
    小凯的疑惑题面:Link分析:题意简述:给定两个互质的正整数$x,y$,求最大不能被表示成$ax+by$的数($a,b$满足$0\lea,b$ 且为整数)不妨设$x<y$,答案为$ans$如果:$ans\equivmx(mod\,y)(1\lem\ley-1)$则$ans=mx+ny(1\lem\ley-1)$注意这里的$n$可以为非正整数显......
  • 改大蟒蛇Anaconda中Jupyter Notebook默认工作路径
    先用大蟒蛇的终端生成配置文件输入jupyternotebook--generate-config然后会告诉你生成文件的地址。文本模式打开该文件搜索“Thedirectorytousefornotebooks”,把下面的取消注释,写好文件目录重启即可......
  • [数论第四节]容斥原理/博弈论/NIM游戏
    容斥原理\(|A\cupB\cupC|=|A|+|B|+|C|-|A\capB|-|A\capC|-|B\capC|+|A\capB\capC|\)\(|\displaystyle\cup_{i=1}^nA_i|=\sum_{i}|A_i|-\sum_{i,j}|A_i\capA_j|+\ldots+(-1)^{n+1}|\cap_{i=1}^nA_i|\)时间复杂度:\(C_n^1+C_n^2+C_n^3···+C_n^n=2......
  • Redmi Note 12 Turbo苹果主题
    主题类型:混搭预览效果如下混搭类型测试MIUI版本12-13-14通用锁屏样式超级景深Max通知栏超级景深Max图标AP14超级景深短信主题听云间拨号于联系人听云间桌面AP14超级景深......
  • 数论函数合集
    整除分块例题:UVA11526H(n)复杂度保证:\[\foralln\in\mathbb{N_+},|\{\left\lfloor\frac{n}{i}\right\rfloor|\i\in\mathbb{N_+},i\len\}|\le\left\lfloor{2\sqrtn}\right\rfloor\](来自oiwiki重要结论:对于\(\left\lfloor\frac{n}{a......
  • 数论函数小计
    1.基础数论函数定义:数论函数,就是值域为整数(陪域为复数)的函数狄利克雷卷积两个数论函数的狄利克雷卷积是一个新的函数比如\(f(n)\),\(g(n)\)它们的卷积就是\(f*g\)怎么卷呢?定义:\(\large{(f*g)(n)=\sum\limits_{d|n}f(n)g(n/d)}\)举个例子:\((f*g)(12)=f(1)*g......
  • 数论练习题小结
    1.P1447题意:求\[\sum\limits_{i=1}^n\sum\limits_{j=1}^m2\times(i,j)-1\]思考:原式等价于\(2\sum\limits_{i=1}^n\sum\limits_{j=1}^m(i,j)-n*m\)然后套上欧拉反演即可时间复杂度\(O(\sqrtn)\)2.P4318题意:\(T\)组数据,每组数据给出一个正整数\(K\),求第\(K\)个不含大......
  • 【学习笔记】简单数论
    前言开个大坑。正文质数质数的个数是无限的。试除法:若一个正整数\(N\)为合数,则存在一个能整除\(N\)的数\(T\),其中\(2\leT\le\sqrt{N}\)。时间复杂度为\(O(\sqrt{n})\)。代码实现boolisprime(intn){if(n<2)returnfalse;for(in......
  • LCM Sum[数论+树状数组]
    Problem-E2-Codeforces给一个区间[L,R],询问有多少三元组(i,j,k)满足L=<i<j<k<=r且lcm(i,j,k)>=i+j+k.正难则反。我们可以考虑它的补集。lcm<i+j+k,然后是i+j+k<3*k所以lcm<3k,又因为k是lcm的因数,所以lcm=k或者2k。那么答案变成了求L,R里lcm=k和2k的三元组的数目如果lcm=......
  • 数论分块
    数论分块学习用途快速计算含有\(\lfloor{\frac{n}{i}}\rfloor\)的和式(\(i\)为变量)引理引理1\[\foralla,b,c\in\mathbb{N_+},\quad\Big\lfloor\frac{a}{bc}\Big\rfloor=\bigg\lfloor\frac{\lfloor\frac{a}{b}\rfloor}{c}\bigg\rfloor\]证明1\[\text{let}\qua......