首页 > 其他分享 >浅谈数论

浅谈数论

时间:2023-02-14 20:33:25浏览次数:44  
标签:frac 浅谈 数论 int therefore cases gcd

浅谈数论

待更

欧几里得算法

gcd(a,b)=gcd(b,a%b)

说人话就是辗转相除法

证明:

$$
令a=bk+c
\
\therefore c=a-bk
\
设有公约数d|a,d|b
\
\therefore \frac{a}{d}-\frac{b}{d}
k=\frac{c}{d}
\
\therefore d|c
$$

此处使用递归实现

int gcd(int a,int b)
{
    return b==0?a:gcd(b,a%b);
}

扩展欧几里得算法

使用欧几里得算法处理不定方程$ax+by=gcd(a,b)$
$$
ax+by=gcd(a,b)
=gcd(b,a;mod;b)
=bx'+(a;mod;b)y'
\
=bx'+(a-\lfloor\frac{a}{b}\rfloorb)*y'
=ay'+b(x'-\frac{a}{b}y')
\
\because ax+by=ay'+b(x'-\frac{a}{b}y')
\
\therefore
\begin{cases}
x=y'
\
y=x'-\frac{a}{b}y'
\end{cases}
$$

由此不断递归,当$gcd=0$时得
$$
\begin{cases}
x=1
\
y=0
\end{cases}
$$

其实现如下

int exgcd(int a, int b, int &x, int &y)
{
    if (!b)
    {
        x = 1, y = 0;
        return a;
    }
    int gg = exgcd(b, a % b, y, x);
    y -= a / b * x;
    return gg;
}

标签:frac,浅谈,数论,int,therefore,cases,gcd
From: https://www.cnblogs.com/ssj233-aaa/p/17120806.html

相关文章

  • 任意模数多项式乘法-多模数快速数论变换
    本文作者为JustinRochester。目录地址上一篇下一篇任意模数多项式乘法在部分题目中,我们的多项式运算结果并不是对多项式模数(如\(998244353\))取模,而是对一些指定的(......
  • 密码学简单数论笔记(2):最大公约数、扩展欧几里得算法和最小公倍数
      参考资料:1.https://www.bilibili.com/video/BV1x3411s7Sy/?spm_id_from=333.788&vd_source=e66dd25b0246f28e772d75f11c80f03c2.http://t.csdn.cn/diQ272.余红兵:《......
  • 蓝桥杯 简单数论 乘机尾零
    题目描述本题为填空题,只需要算出结果后,在代码中使用输出语句将所填结果输出即可。如下的 1010 行数据,每行有 1010 个整数,请你求出它们的乘积的末尾有多少个零?56504......
  • 密码学简单数论笔记(1):素数和模运算
      参考资料:1.https://www.bilibili.com/video/BV1x3411s7Sy/?spm_id_from=333.788&vd_source=e66dd25b0246f28e772d75f11c80f03c2.余红兵:《数学奥林匹克小丛书(第二版)......
  • 云计算浅谈之一:云计算介绍
    微软前一段通知,微软的云计算平台windowsazure在中国的服务将会于10月1日开通。微软承诺未来90%的开发人员将从事云计算方面的工作。在这个重要的时刻,是时候提醒更多的开发......
  • 基础数论
    基础数论前置芝士质数与约数整除分块欧拉函数模运算与逆元前置芝士:等比数列求和等比数列求和:$S_n=a_0\frac{1-q^n}{1-q}$质数与约数:整除与约数质数与合数......
  • 数论杂谈Ⅲ
    抽屉原理你也可以叫他鸽笼原理。给你\(n\)个抽屉,\(n+1\)个小球,把所有的小球都放到抽屉里面,其中至少会有一个抽屉里面的小球数量是大于等于\(2\)的。相反,如果是\(n......
  • 【大型软件开发】浅谈大型Qt软件开发(四)动态链接库的宏冲突问题、COM组件开发的常见问
    最近工作的时候有一个链接库的对接工作,在对接时发生了一些小问题,这篇FAQ是办公室写这个库的工程师戴工写的,这里记录一下:一、编译工程时报链接错误“不允许dllimport静态数......
  • 如何利用人工智能改善医疗行业?浅谈ChatGpt在医疗元宇宙的应用
    随着技术的不断进步,广州华锐互动打造出了适合医疗行业的元宇宙,并且也在不断寻找更加高效的方法来改善患者的医疗体验。这里,广州华锐互动为大家介绍一种利用人工智能的方法:C......
  • (一)浅谈人工智能:ChatGPT
     欢迎关注微信公众号专注于网络安全领域,跟踪漏洞动态,深耕互联网,做一个深谙攻防之道的公众号。同时涉足多个领域,是哲学,抑或是文学与艺术,关注金融市场,研究全......