中国剩余定理

Chinese remainder theorem

一个正整数K,给出K Mod 一些质数的结果,求符合条件的最小的K。例如,K % 2 = 1, K % 3 = 2, K % 5 = 3。符合条件的最小的K = 23。

Input

第1行:1个数N表示后面输入的质数及模的数量。(2 <= N <= 10)
第2 - N + 1行,每行2个数P和M,中间用空格分隔,P是质数,M是K % P的结果。(2 <= P <= 100, 0 <= K < P)

Output

输出符合条件的最小的K。数据中所有K均小于10^9。

Sample Input

3
2 1
3 2
5 3

Sample Output

23
#include<cstdio>
using namespace std;
typedef long long ll;
const int maxn=1e9+7;
//扩展欧几里得定理
ll ex_gcd(ll a,ll b,ll &x,ll &y)
{ll d=a;if(!b)    x=1,y=0;else{d=ex_gcd(b,a%b,y,x);y-=a/b*x;}return d;
}//中国剩余定理
//x%m[i]=a[i]
ll china(int n,int *a,int *m)
{ll M=1,x=0,y,z;for(int i=0;i<n;i++)M*=m[i];for(int i=0;i<n;i++){ll M_i=M/m[i];ex_gcd(M_i,m[i],y,z);//M_i*y = 1(mod m[i])x = (x+M_i*a[i]*y)%M;}return (x+M)%M;
}
int main()
{int n;//输入的质数及模的数量while(scanf("%d",&n)!=EOF){int *m=new int[15];//质数int *a=new int[15];//K%m[i]=a[i]for(int i=0;i<n;i++){scanf("%d%d",&m[i],&a[i]);}printf("%lld\n",china(n,a,m));}return 0;
}

51Nod1079 中国剩余定理相关推荐

  1. [51nod1079]中国剩余定理

    解题关键:注意爆long long $x \equiv {M_1}M_1^{ - 1}{a_1} + ... + {M_k}M_k^{ - 1}{a_k}(\bmod m)$ 其中,$m = \pro ...

  2. 51nod1079中国剩余定理

    /***中国剩余定理*/ #include<iostream> #include<cstdio> #include<map> #include<cstring ...

  3. CF338D GCD Table(拓展中国剩余定理,细节处理,2900分)

    整理的算法模板合集: ACM模板 点我看算法全家桶系列!!! 实际上是一个全新的精炼模板整合计划 CF338D GCD Table(拓展中国剩余定理,细节处理,2900分) Problem 有一张 n ...

  4. 初等数论--同余方程--同余方程组:中国剩余定理

    初等数论--同余方程--同余方程组:中国剩余定理 博主是初学初等数论(整除+同余+原根),本意是想整理一些较难理解的定理.算法,加深记忆也方便日后查找:如果有错,欢迎指正. 我整理成一个系列:初等数论 ...

  5. 数论一之定理证明——裴蜀/威尔逊/费马/扩展欧几里得/[扩展]欧拉/[扩展]中国剩余定理,欧拉函数,逆元,剩余系,筛法

    打死没想到会在H老师处学懂数论 同余,整除 模运算 埃式筛法 欧拉筛法 最大公约数和最小公倍数 辗转相除法 更相减损术 裴蜀定理 威尔逊定理 费马定理 同余等价类.剩余系.缩系 欧拉函数 欧拉定理 扩 ...

  6. 信奥中的数学:孙子定理 中国剩余定理

    孙子定理 中国剩余定理 孙子定理 中国剩余定理_Dreamer Thinker Doer-CSDN博客 中国剩余问题(简介+详解) 中国剩余问题(简介+详解)_dreamzuora的博客-CSDN博客 ...

  7. 数论 —— 线性同余方程组与中国剩余定理

    [线性同余方程组] 由若干个线性同余方程构成的线性方程组. 例如: 其解法最早由我国<孙子算经>给出,因此解法称为"孙子定理",又叫"中国剩余定理" ...

  8. 通常情况下的中国剩余定理

    这几天学了学中国剩余定理....本来计划是一天学互质版一天学非互质版的,结果非互质版就学了好长时间...不过好在会证明了,考场上大力推一波应该是没问题的吧... 中国剩余定理是求形如x≡a1(mod ...

  9. poj 1006 java_POJ 1006 Java:中国剩余定理

    题目描述: 人生来就有三个生理周期,分别为体力.感情和智力周期,它们的周期长度为23天.28天和33天.每一个周期中有一天是高峰.在高峰这天,人会在相应的方面表现出色.例如,智力周期的高峰,人会思维敏 ...

最新文章

  1. Mac环境下配置Java开发环境(jdk+maven+tomcat+idea)
  2. 浅谈a标签属性href的mailto更多用法
  3. javascript数组查重方法总结
  4. 一个简单的基于socket的通讯处理程序
  5. Educational Codeforces Round 47
  6. python加载机制_Python 模块的加载顺序
  7. 资源管理与调度系统-YARN的资源调度器
  8. juel java_Juel基本使用
  9. arcgis使用教程和视频教程
  10. C语言总谐波失真(THD)实现,从理论到应用分析改进详解
  11. C# 导出 EXecl ,导出word,word转PDF
  12. 【高等数学】单射,满射,双射的区别
  13. 一起来学自然语言处理----语料库和词汇资源
  14. gpib-usb-hs linux,美国NI GPIB-USB-HS+连接线GPIB转USB接口控制器高速传输
  15. python中的逻辑判断与循环
  16. c++封装so库,供安卓android调用
  17. 交易结果=市场理解×(交易策略+自我认识)
  18. PKI与证书相关基本知识
  19. 怎么利用支付宝当面付实现手机网站支付
  20. 【python】打开网页和下载文件

热门文章

  1. 【剑指offer】21、调整数组顺序使奇数在偶数前面
  2. D3.js学习(四)
  3. 第二阶段——个人工作总结DAY10
  4. ElasticSearch服务器操作命令
  5. apache设置网页gzip压缩(亲测可用)
  6. easypoi 多sheet导入_程序员接私活利器 玩转excel导入导出
  7. c#匿名方法用途_C#的匿名方法
  8. 鸿蒙os终于开始大升级,华为鸿蒙OS终于要迎来大规模推送升级了
  9. 个人发卡网搭建源码_免费建设一个个人网站到底能不能实现
  10. 转子接地保护原理_发电机转子一点接地保护的研究