码迷,mamicode.com
首页 >  
搜索关键字:欧几里得算法    ( 382个结果
POJ1061-青蛙的约会---扩展欧几里德算法求最小整数解
扩展欧几里得算法模板 1.对于形如a*x0 + b*y0 = n的不定方程为了求解x0和y0,可以通过扩展欧几里得先求出满足a*x + b*y = gcd(a, b)的x和y。 2.容易得到,若(x-y)%gcd(a,b)==0,则该不定方程有整数解,否则无符合条件的整数解。 3.得到x和y后,可以 ...
分类:编程语言   时间:2017-04-08 12:56:56    阅读次数:270
数论初步
求两个数的最大公约数 最小公倍数 = a * b / gcd(a,b),注意精度; ax+by+c = 0 直线上有多少个整点 (x,y) 满足 x 属于 [x1,x2],y 属于 [y1,y2]。这是扩展欧几里得算法: 首先解决扩展欧几里得 ax + by = gcd(a,b),x,y为整数; 找 ...
分类:其他好文   时间:2017-04-04 13:21:14    阅读次数:158
拓展欧几里得算法
算法描述就是: 求整数 x和y 使得 ax + by = 1. 可以发现, 如果gcd(a, b) ≠ 1,则显然无解. 反之, 如果gcd(a, b) = 1, 则可以通过拓展原来的 辗转相除法 来求解. 事实上,一定存在整数对(x, y)使得ax+by = gcd(a,b) 代码如下: ...
分类:编程语言   时间:2017-04-03 18:53:23    阅读次数:164
POJ 1061 青蛙的约会(扩展欧几里得算法)
http://poj.org/problem?id=1061 思路: 搞懂这个扩展欧几里得算法花了不少时间,数论真的是难啊。 含义:找出一对整数,使得ax+by=gcd(a,b)。 接下来看这道题目,(x+mt)-(y+nt)=kl,转换成(n-m)t+kl=x-y。 令a=n-m,b=l,c=x- ...
分类:编程语言   时间:2017-03-19 11:57:51    阅读次数:245
POJ 2115 C Looooops(Exgcd)
【题目链接】 http://poj.org/problem?id=2115 【题目大意】 求for (variable = A; variable != B; variable += C)的循环次数, 其中变量为k比特无符号整数。 【题解】 题目等价于求解Cx=(B–A)(mod 2^k),利用扩展 ...
分类:其他好文   时间:2017-03-18 01:01:56    阅读次数:167
数学选讲 orz
质数筛法: 肯定有一个质因数是小于根号n的。这个东西是很明显的。 启发式分解: review :欧几里得算法的证明 a=bmodc ==> a-k*c=b; 扩展欧几里得求得解为 |s|+|t|最小的解 分数工厂: 有 n 个正整数 a1, a2, · · · , an 和 m 个正整数 b1, b ...
分类:其他好文   时间:2017-03-12 23:10:23    阅读次数:184
算法笔记_042:求最小公倍数(Java)
目录 1 问题描述 2 解决方案 1 问题描述 何为最小公倍数?能同时被数字m和数字n整除的最小整数。例如,24和60的最小公倍数等于120。下面请编写相关函数实现求取数字m和n的最小公倍数。 2 解决方案 关于本文求解最小公倍数的思想,来自于《算法设计与分析基础》第三版上一段讲解,具体如下: 具体 ...
分类:编程语言   时间:2017-02-21 13:24:49    阅读次数:171
同余运算及其基本性质
取模: a%b b定是正整数,尽管语言上b<0合法。/b=0出现除0错 (a+b)mod n=((a mod n)+(b mod n)) mod n (a-b)mod n=((a mod n)-(b mod n)+n)mod n //注意减法, a mod n 可能小于 b mod n 结果需加上n ...
分类:其他好文   时间:2017-02-13 23:48:29    阅读次数:367
51Nod 1079
题目大意: 题目大意: 题目大意: 一个正整数K,给出K Mod一些质数的结果,求符合条件的最小的K。例如,K%2=1,K%3=2,K%5=3符合条件的最小的K=23。 一个正整数K,给出K Mod一些质数的结果,求符合条件的最小的K。例如,K%2=1,K%3=2,K%5=3符合条件的最小的K=23 ...
分类:其他好文   时间:2017-02-11 12:21:53    阅读次数:170
欧几里得算法(辗转相除法)
欧几里得算法 gcd(a,b)=gcd(b,a mod(b)); $start: hypo: r=a mod b, d=gcd(a,b); $: a=kb+r; $: r/d= a/d-(kb)/d; $: r mod d=0; $: if d=gcd(a,b) then d <- gcd(r); ...
分类:编程语言   时间:2017-02-04 14:37:10    阅读次数:151
382条   上一页 1 ... 19 20 21 22 23 ... 39 下一页
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!