孙子定理(中国剩余定理)
中国剩余定理
中国剩余定理这样描述,给出以下一元线性同余方程组
给出你n个ai和mi,求出符合题意的X值,一般输出最小解。
ti 要用扩展欧几里得算法e_gcd()计算。
证明参照:点击打开链接
看个例子
例题中三个模数 m1=3,m2=5,m3=7;
余数a1=2,a2=3,a3=2;
M=105,M1=35 , M2=21,M3=15;
t1=2,t2=1,t3=1;
70=t1*M1,21=t2*M2,15=t3*M3
X =( a1 * t1 * M1 + a2 * t2 * M2 + a3 * t3 * M3)%M=( 2 * 2 * 35 + 3 * 1 * 21 + 2 * 2 * 15)%105=23
代码实现:
//n个mi互质
ll m[101];ll a[101];//m[]存放互质的数,a[]存放余数
void e_gcd(ll a,ll b,ll &x, ll &y){//计算逆元 if(b==0){x=1;y=0;return;}e_gcd(b,a%b,x,y);ll temp=x;x=y;y=temp-a/b*y;
}
ll CRT(){ll M=1;for(int i=0;i<n;i++) M*=m[i];ll ret=0;for(int i=0;i<n;i++){ll x,y;ll tm=M/m[i];//计算Mie_gcd(tm,m[i],x,y);//计算逆元x ret=(ret+x*a[i]*tm)%M;//计算结果值 }return (ret+M)%M;
}
中国剩余数定理是适用于n个mi两两互质的情况的,还有不互质的呢,待续。。。。。。
孙子定理(中国剩余定理)相关推荐
- 信奥中的数学:孙子定理 中国剩余定理
孙子定理 中国剩余定理 孙子定理 中国剩余定理_Dreamer Thinker Doer-CSDN博客 中国剩余问题(简介+详解) 中国剩余问题(简介+详解)_dreamzuora的博客-CSDN博客 ...
- 孙子定理 中国剩余定理
孙子定理 摘自:百度百科 目录 定义 解释 解法 数学公式 中国剩余定理 案例 展开 编辑本段 定义 中国古代求解一次同余式组(见同余)的方法.是数论中一个重要定理.又称中国剩余定理. 内容 编辑本段 ...
- BZOJ-1951-古代猪文-SDOI2010-费马小定理+欧拉函数+lucas定理+中国剩余定理
描述 =>G∑(ni),i|nmodP =>G^{\sum {{n\choose i}\text{,i|n}}} modP 分析 k=∑Cin,i|n(modP) k=\sum {C_n^ ...
- BZOJ 3782 上学路线 ——动态规划 Lucas定理 中国剩余定理
我们枚举第一个经过的坏点,然后DP即可. 状态转移方程不是难点,难点在于组合数的处理. 将狼踩尽的博客中有很详细的证明过程,但是我只记住了结论 $n=a_1 * p^k+a_2*p^k-1...$ $ ...
- 从孙子算经到中国剩余定理
中国剩余定理中间涉及一个重要观念:互质: 首先来看<孙子算经>卷下第二十六问:今有物,不知其数.三.三数之,剩二:五.五数之,剩三:七.七数之,剩二.问物几何? 转换为数学语言即是(理解其 ...
- python中国剩余定理公式_《孙子算经》之物不知数题:中国剩余定理
1.<孙子算经>之"物不知数"题 今有物不知其数,三三数之剩二,五五数之剩七,七七数之剩二,问物几何? 2.中国剩余定理 定义: 设 a,b,m 都是整数. 如果 m ...
- 中国剩余定理matlab程序,中国剩余定理即孙子定理的五种解法
中国剩余定理即孙子定理的五种解法 -- 学习初等数论心得笔记 2013-10-04 博文2015-12修改 "中国剩余定理"是公元5-6世纪.我国南北朝时期的一部著名算术著作< ...
- 数论 —— 线性同余方程组与中国剩余定理
[线性同余方程组] 由若干个线性同余方程构成的线性方程组. 例如: 其解法最早由我国<孙子算经>给出,因此解法称为"孙子定理",又叫"中国剩余定理" ...
- poj 1006 java_POJ 1006 Java:中国剩余定理
题目描述: 人生来就有三个生理周期,分别为体力.感情和智力周期,它们的周期长度为23天.28天和33天.每一个周期中有一天是高峰.在高峰这天,人会在相应的方面表现出色.例如,智力周期的高峰,人会思维敏 ...
- 密码学基础算法(二)中国剩余定理
随便谷歌了一个图片做首图 原图地址: http://www.siwapu.com/etagid41968b0/ 密码学基础系列: (一) 基于整数的欧几里得算法和扩展欧几里得算法 (二) 中国剩余定理 ...
最新文章
- Thrift RPC 系列教程(4)——源码目录结构组织
- 第四章 遗传变异的分类
- Redhat中通过命令工具和配置文件设置TCP/IP参数的方法
- 《统计学》学习笔记之数据的收集
- 支付宝放出数字化经营新神器,可提升商家60%消费频次
- bash 抓捕异常_SHELL异常处理(转载)
- matlab怎么实现OFDM仿真,OFDMmatlab实现仿真源代码
- [LeetCode] Z字型变换
- 基于单片机的人体健康检测系统
- Android仿微信朋友圈10s视频编辑
- sqlite3的使用
- 离散数学·集合论【基本的集合恒等式】
- 记录下在线扩容服务器遇到的问题 NOCHANGE: partition 1 is size 419428319. it cannot be grown
- 西门子1200PLC程序远程上下载,远程在线调试原来是使用了巨控GRM530远程模块
- 20年代下的VR发展趋势
- 康旅江湖,谁在编写琅琊榜
- 5G的关键技术与所面临的挑战
- Chromium-Dev中一些英文缩写
- android开发和手游开发工具,developer盘点Android开发者必备十大开发工具
- 找工作再也不愁之面试技巧全覆盖-这样面试保证拿Offer
热门文章
- [黑群晖]DSM7.1 ds3617xs 志强e3 1265lv3 b85保姆级安装教程
- pe系统如何读取手机_pe装系统,详细教您怎么在PE系统中重装系统
- 甘肃地形图之陇右地形分析、DEM数据下载
- R语言double数据转成numeric类型
- oracle11导出导入dmp详解
- Java项目:基于Servlet+Mybatis+Layui的CRM客户关系管理系统
- lisp绘制法兰_lisp语言画键槽_用LISP语言自定义AutoCAD命令
- 单片机:看门狗程序简介
- Oracle中sign函数的简单用法
- 安卓app开发-03-项目的基本开发步骤