中国剩余定理
来源:互联网 发布:js页面载入事件 编辑:程序博客网 时间:2024/04/30 16:56
中国剩余定理(CRT)的表述如下
设正整数两两互素,则同余方程组
有整数解。并且在模下的解是唯一的,解为
其中,而为模的逆元。
int CRT(int a[],int m[],int n) { int M = 1; int ans = 0; for(int i=1; i<=n; i++) M *= m[i]; for(int i=1; i<=n; i++) { int x, y; int Mi = M / m[i]; extend_Euclid(Mi, m[i], x, y); ans = (ans + Mi * x * a[i]) % M; } if(ans < 0) ans += M; return ans; }
普通的中国剩余定理要求所有的互素,那么如果不互素呢,怎么求解同余方程组?
这种情况就采用两两合并的思想,假设要合并如下两个方程
那么得到
在利用扩展欧几里得算法解出的最小正整数解,再带入
得到后合并为一个方程的结果为
这样一直合并下去,最终可以求得同余方程组的解。
原来文章地址:http://blog.csdn.net/acdreamers/article/details/8050018
0 0
- 中国剩余定理模版【中国剩余定理】
- 中国剩余定理
- 中国剩余定理
- 中国剩余定理
- 中国剩余定理
- 中国剩余定理
- 中国剩余定理
- 中国剩余定理
- 中国剩余定理
- 数论-中国剩余定理
- 中国剩余定理
- 中国剩余定理
- 中国剩余定理
- 数论/中国剩余定理
- 关于《中国剩余定理》
- 中国剩余定理
- 模板[中国剩余定理]
- 中国剩余定理
- ArrayDeque源码解析
- 深度学习史上最全总结(文末有福利)
- InheritableThreadLocal用法与ThreadLocal的区别
- 可以直接获取id对象
- 判断number时最好用正则
- 中国剩余定理
- 小知识(1)
- 可能是讲解Android事件分发最好的文章
- 我的第一篇博客,linux的中文输入设置
- firstChild,nextSibling,childNodes等属性的问题
- MFC误报内存泄露的修复
- Python开发的10个小贴士
- 编程规范
- jquery遍历数组的问题