模线性方程组(中国剩余定理)
来源:互联网 发布:hishop销客多源码 编辑:程序博客网 时间:2024/05/16 07:02
hiho – 1303
//解法和说明题面已经说的很清楚了. 下面就给出代码实现.
/** @Cain*/const int maxn=1e4+5;ll m[maxn],r[maxn];int n;ll ex_gcd(ll a,ll b,ll &x,ll &y){ if(!b){ x = 1; y = 0; return a; } ll r = ex_gcd(b,a%b,x,y); ll tmp = x; x = y; y = tmp - a/b*y; return r;}ll tongyu(){ ll M = m[1],R = r[1]; for(int i=2;i<=n;i++){ ll d = __gcd(m[i],M); ll c = r[i] - R; if(c%d) return -1; //无解 ll k1,k2; ex_gcd(M/d,m[i]/d,k1,k2); //扩展GCD求解 k1 = ( k1* c/d ) % (m[i] / d);//别忘了扩充解系.!!!不懂的看看原理. R = R + k1*M; // 计算x = m[1]*k[1] + r[1];(当然用k2也是可以的) M = M / d * m[i]; //求解LCM(M,m[i]); R %= M; //求解合并后的新R,同时让R最小. //这些不理解的话写几个出来就懂了. } if( R < 0) R += M; return R;}void solve(){ cin >> n; for(int i=1;i<=n;i++) cin >> m[i] >> r[i]; cout << tongyu() << endl;}
阅读全文
0 0
- 模线性方程组(中国剩余定理)
- 中国剩余定理(CRT):求解模线性方程组
- 扩展欧几里德 中国剩余定理 合并模线性方程组
- HDU 1573 X问题 (中国剩余定理 模线性方程组)
- Hdu 1573 X问题 + Hdu 3579 Hello Kiki (模线性方程组-非互质中国剩余定理)
- Biorhythms(求模线性方程组--中国剩余定理的完美诠释)
- POJ 2891 Strange Way to Express Integers【模线性方程组】(中国剩余定理非互质套用)
- Strange Way to Express Integers(扩展欧几里得+乘法逆元+中国剩余定理求解非互质的模线性方程组)
- 中国剩余定理模版【中国剩余定理】
- 中国剩余定理求解同余线性方程组—(互素和非互素的情况)
- 中国剩余定理求解同余线性方程组—(互素和非互素的情况)
- 中国剩余定理求解同余线性方程组(模数互素和非互素的情况)
- 同余 模算术 中国剩余定理
- 中国剩余定理
- 中国剩余定理
- 中国剩余定理
- 中国剩余定理
- 中国剩余定理
- 游戏服务器架构的演进简史
- springcloud(一):大话Spring Cloud
- UTF-8编码时,PHP如何正则匹配中文汉字?亲测可用
- python django 多级业务树形结构规划及页面渲染 概述: 在项目中,父级到子级结构并不少见,如果仅仅的两层树形结构,我们可以使用数据库的外键设计轻松做到,子级业务表设计一字段外键到父级
- Spring Boot干货:常用属性汇总
- 模线性方程组(中国剩余定理)
- Codeforces Round #382 (Div. 2)(A-D 未完)
- More is better
- NYOJ 63 小猴子下落
- 【Hadoop】之 实验一(过滤、合并文件)
- 矩阵快速幂 模板
- AndroidStudio如何引入so包
- docker 学习(1)
- HDU 6070 Dirt Ratio