初等数论
文章平均质量分 57
AlgoThinking
这个作者很懒,什么都没留下…
展开
-
欧几里得算法
欧几里得算法,也称辗转相除法,是数论中一项基本技术,欧几里得算法提出至今2000多年,仍然是数论科学家们的至爱,它通过一个简单的过程来确定两个整数的最大公因子(greatest common divisor, GCD)。而扩展的欧几里得算法不仅确定两个正整数的最大公因子,还能求出最大公因子关于这两个正整数的一个线性组合(文章中已给出定义)。欧几里得算法也是求解线性同余方程的有得工具,在密码学中原创 2012-12-23 12:58:19 · 2859 阅读 · 0 评论 -
进制转换与称重问题
1、 称重问题 梅齐利亚克(Backetde Méziriac)在1642年提出这样一个问题:一个商人有一个重40磅的东西碎成了4块,在称这些碎块时发现:每个碎块的重量都是整数,并且可以用这4块碎块来称重介于1到40磅之间且为整数的物体。那么这4块碎块的重量分别是多少? 称重是指用一个有两个托盘的天平,把物体放在任何一个托盘中去称重量。梅齐利亚克问题的答案是1原创 2013-01-07 11:19:52 · 906 阅读 · 0 评论 -
线性同余式
4、C++源代码 编写一个程序解线性同余式ax≡c (mod m),为了使得到的所有解都在[0,m-1]范围内,需要简单的修改一下扩展的欧几里得算法,为了使更简单的处理,要求a,c,m都为正整数,代码如下:struct Triple{ Triple(){} explicit Triple(int g, int s, int t) :g(g)原创 2013-01-09 23:46:04 · 1042 阅读 · 0 评论