中国剩余定理以及扩展中国剩余定理
中国剩余定理必须有两两互质的条件;而扩展中国剩余定理没有限制(可能互质,也能不互质)。所以只记忆一个扩展中国剩余定理的板子就行.
代码
#include <iostream>
#include <algorithm>using namespace std;
typedef long long LL;
int n;LL exgcd(LL a, LL b, LL &x, LL &y){if(b==0){x = 1, y = 0;return a;}LL d, x1, y1;d = exgcd(b, a%b, x1, y1);x = y1, y = x1 - a/b*y1;return d;
}LL excrt(LL m[], LL r[]){LL m1, m2, r1, r2, p, q;m1 = m[0], r1 = r[0];for(int i = 1; i < n; ++i){m2 = m[i], r2 = r[i];LL d = exgcd(m1, m2, p, q);if( (r2-r1)%d !=0 ) return -1; // 不能整除,说明无解p = p*(r2-r1)/d;p = (p%(m2/d) + (m2/d))%(m2/d);r1 = m1*p+r1;m1 = m1*m2/d;}return (r1%m1+m1)%m1;}int main(){cin >> n;LL m[30], r[30];for(int i = 0;i < n; ++i){cin >> m[i] >> r[i];}cout << excrt(m, r) << endl;return 0;
}
题目
题目 | 难度 |
---|---|
AcWing.表达整数的奇怪方式 | 模板题 |
中国剩余定理以及扩展中国剩余定理相关推荐
- 中国剩余定理与扩展中国剩余定理
中国剩余定理又名孙子定理 用来求解同余线性方程组 其中m1,m2,m3-两两互质,求x的最小整数解: 设M为m1,m2,m3-的公倍数. 根据上面的推导,为什么x的通解形式是累加呢? 根据上面推导,推 ...
- 中国剩余定理及扩展中国剩余定理
目录 中国剩余定理CRT 扩展中国剩余定理ExCRT TJOI2009 猜数字 HDU 1573 X问题 中国剩余定理CRT 中国剩余定理是用来求线性同于方程组的. \[ \begin{aligned ...
- 博客处女作:中国剩余定理与扩展中国剩余定理
各位好啊,这里是蒟蒻gigo_64的第一篇博客,,这里我们开始啦. 本文需要读者知晓扩展欧几里得,如果不会请点击这个大佬的链接;https://blog.csdn.net/sslz_fsy/artic ...
- ACM数论----中国剩余定理与拓展中国剩余定理
一.问题引入: 在<孙子算经>中有这样一个问题:"今有物不知其数,三三数之剩二(除以3余2),五五数之剩三(除以5余3),七七数之剩二(除以7余2),问物几何?"这个问 ...
- 中国剩余定理学习 拓展中国剩余定理
中国剩余定理学习 && 拓展中国剩余定理 中国剩余定理: 拓展中国剩余定理: 中国剩余定理: 仅供自己复习时查看一下大佬笔记,详细学习过程在大佬的博客. 学习连接:https://ww ...
- 【原创】 中国剩余定理 和 拓展中国剩余定理
孙子 Preface 数论学习Part 7. 每天进步一点点,退役不会太丢脸. 联赛只剩十五天,隔靴搔痒智何添? 剩余定理四天一篇,动归图论又几何,数据结构似云烟. 莫再等闲,莫忘时间. CRT 我们 ...
- 数论一之定理证明——裴蜀/威尔逊/费马/扩展欧几里得/[扩展]欧拉/[扩展]中国剩余定理,欧拉函数,逆元,剩余系,筛法
打死没想到会在H老师处学懂数论 同余,整除 模运算 埃式筛法 欧拉筛法 最大公约数和最小公倍数 辗转相除法 更相减损术 裴蜀定理 威尔逊定理 费马定理 同余等价类.剩余系.缩系 欧拉函数 欧拉定理 扩 ...
- 与数论的厮守04:扩展中国剩余定理
根据数论的尿性,一般的定理解决不了的问题怎么办?那就拓展一下呗. 我们先看中国剩余定理,它解决的是一堆同余方程:nΞa1(mod b1),nΞa2(mod b2)...nΞak(mod bk),其中b ...
- 中国剩余定理扩展中国剩余定理
中国剩余定理(CRT): 若 m1, m2,...,mk 两两互质,则同余方程组 x≡a1 (mod m1) x≡a2 (mod m2) ------- x≡ak (mod mk) 有整数解,解为 ...
最新文章
- self attentin Q K V心得
- Lync Server 2010迁移至Lync Server 2013部署系列 Part3:部署后端备用服务器
- 基于FPGA实现IIC接口(EEPROM)
- webdriver.chrome()禁止加载图片
- 2021会宁三中高考成绩查询,2020白银中考分数线
- Android 使用SQLiteDatabase操作SQLite数据库(二)
- AndroidTV开发7实现仿小米电视和各种盒子TV焦点放大缩小效果
- 关于get方式提交中文乱码问题的解决方式
- 什么是法线贴图 今天教你如何制作法线贴图
- css动感线条,使用css3制作动感导航条示例
- Ice的HelloWorld(Java)
- 蛋糕甜品小程序有哪些,这3款小程序值得收藏!
- CSR、SSR、SPA是什么
- 数字人民币红包体验如何?
- 遇到了 “遇到以零作除数错误” 的问题
- 假冒上市被揭发,这家公司有何来头?
- 微信分享申请 APPID 时,签名要这样填写
- js 比较两个字符串形式的时间的大小
- “以电折水、水电共计”智能仪表助力农业灌溉走上新模式
- 有约束条件的优化问题求解推导
热门文章
- 前端 sqllite sql.js
- systeminfo卡死一例分析
- Pandas操作02
- matlab合并数据,matlab使用小技巧——数据的拆分与合并
- 用了接口还有必要用抽象类吗?
- 如何设置Luminati Proxy Manager? Luminati+VMlogin=多个( Facebook, Google, 亚马逊,ebay)等帐号同时登录,批量管理且不被关联。
- 【济州岛新任市长支持优秀ICO项目】
- Dynamics Ax 微软官方社区地址
- 单源最短路径dijkstra算法
- CodeForces 954D-Fight Against Traffic(加边最短路)