Python实现的中国剩余定理算法示例


Posted in Python onAugust 05, 2017

本文实例讲述了Python实现的中国剩余定理算法。分享给大家供大家参考,具体如下:

中国剩余定理(Chinese Remainder Theorem-CRT):又称孙子定理,是数论中的一个定理。即如果一个人知道了一个数n被多个整数相除得到的余数,当这些除数两两互质的情况下,这个人就可以唯一的确定被这些个整数乘积除n所得的余数。

维基百科上wiki:The Chinese remainder theorem is a theorem of number theory, which states that, if one knows the remainders of the division of an integer n by several integers, then one can determine uniquely the remainder of the division of n by the product of these integers, under the condition that the divisors are pairwise coprime.

有一数n,被2除余1,被3除余2,被5除余4,被6除余5,正好被7整除,求该数n.

分析:n被2除余1,说明概述最小为1,之后该条件一直满足,所以需要加上的数一定是2的倍数。被3除余2,即(1+2*i)%3=2,其中i为正整数。之后该条件一直满足,所以需要加上的数一定是3的倍数,又因为前一个条件的限制,所以是2和3的最小公倍数的整数倍。一次类推,知道找到被7整除的数。

n=1
while(n%3 != 2):
  n += 2
while(n%5 != 4):
  n += 6
while(n%6 != 5):
  n += 30
while(n%7 != 0):
  n += 30

最终结果为119。

希望本文所述对大家Python程序设计有所帮助。

Python 相关文章推荐
跟老齐学Python之编写类之三子类
Oct 11 Python
Python动刷新抢12306火车票的代码(附源码)
Jan 24 Python
Python使用pyodbc访问数据库操作方法详解
Jul 05 Python
python 判断参数为Nonetype类型或空的实例
Oct 30 Python
对dataframe数据之间求补集的实例详解
Jan 30 Python
详解python3 + Scrapy爬虫学习之创建项目
Apr 12 Python
Tensorflow模型实现预测或识别单张图片
Jul 19 Python
Django利用elasticsearch(搜索引擎)实现搜索功能
Nov 26 Python
python 基于PYMYSQL使用MYSQL数据库
Dec 24 Python
聊聊Python pandas 中loc函数的使用,及跟iloc的区别说明
Mar 03 Python
解决pycharm下载库时出现Failed to install package的问题
Sep 04 Python
python+opencv实现目标跟踪过程
Jun 21 Python
python爬虫_自动获取seebug的poc实例
Aug 05 #Python
python中的break、continue、exit()、pass全面解析
Aug 05 #Python
Python基于递归算法实现的走迷宫问题
Aug 04 #Python
Python实现的科学计算器功能示例
Aug 04 #Python
Python中用字符串调用函数或方法示例代码
Aug 04 #Python
Python编程实现的图片识别功能示例
Aug 03 #Python
详解python实现读取邮件数据并下载附件的实例
Aug 03 #Python
You might like
PHP中函数rand和mt_rand的区别比较
2012/12/26 PHP
php中字符集转换iconv函数使用总结
2014/10/11 PHP
分享PHP-pcntl 实现多进程代码
2016/09/30 PHP
php实现留言板功能(代码详解)
2017/03/28 PHP
$.ajax json数据传递方法
2008/11/19 Javascript
IE6下focus与blur错乱的解决方案
2011/07/31 Javascript
一个关于javascript匿名函数的问题分析
2012/03/30 Javascript
JS解决ie6下png透明的方法实例
2013/08/02 Javascript
jQuery学习笔记之jQuery.extend(),jQuery.fn.extend()分析
2014/06/09 Javascript
document.forms用法示例介绍
2014/06/26 Javascript
jQuery如何使用自动触发事件trigger
2015/11/29 Javascript
实例讲解jquery与json的结合
2016/01/07 Javascript
每个程序员都需要学习 JavaScript 的7个理由小结
2016/09/03 Javascript
小程序开发实战:实现九宫格界面的导航的代码实现
2017/01/19 Javascript
ES6中参数的默认值语法介绍
2017/05/03 Javascript
微信小程序自定义导航栏
2018/12/31 Javascript
vue使用混入定义全局变量、函数、筛选器的实例代码
2019/07/29 Javascript
[01:13]2014DOTA2西雅图邀请赛 舌尖上的TI4
2014/07/08 DOTA
[00:33]2018DOTA2亚洲邀请赛TNC出场
2018/04/04 DOTA
用Python编写一个国际象棋AI程序
2014/11/28 Python
详解Python的collections模块中的deque双端队列结构
2016/07/07 Python
python编写Logistic逻辑回归
2020/12/30 Python
python正则实现提取电话功能
2018/02/24 Python
Python利用Pillow(PIL)库实现验证码图片的全过程
2020/10/04 Python
Python Selenium破解滑块验证码最新版(GEETEST95%以上通过率)
2021/01/29 Python
input file上传文件样式支持html5的浏览器解决方案
2012/11/14 HTML / CSS
斯图尔特·韦茨曼鞋加拿大官网:Stuart Weitzman加拿大
2019/10/13 全球购物
Delphi CS笔试题
2014/01/04 面试题
实习评语
2013/12/16 职场文书
写给老师的表扬信
2014/01/21 职场文书
党的生日活动方案
2014/08/15 职场文书
班级活动总结格式
2014/08/30 职场文书
法定代表人资格证明书
2014/09/11 职场文书
教师查摆问题自查报告
2014/10/11 职场文书
商务宴请邀请函范文
2015/02/02 职场文书
入党积极分子培养联系人意见
2015/08/12 职场文书