邝斌的ACM模板(模线性方程组)
来源:互联网 发布:网络任务平台 编辑:程序博客网 时间:2024/06/05 19:55
本博客整理自邝斌的ACM模板
2.5、模线性方程组
long long extend_gcd(long long a,long long b,long long &x,long long &y){ if(a == 0 && b == 0)return -1; if(b ==0 ) { x = 1; y = 0; return a; } long long d = extend_gcd(b,a%b,y,x); y -= a/b*x; return d;}int m[10],a[10];//模数为m,余数为a, X % m = abool solve(int &m0,int &a0,int m,int a){ long long y,x; int g = extend_gcd(m0,m,x,y); if( abs(a - a0)%g )return false; x *= (a - a0)/g; x %= m/g; a0 = (x*m0 + a0); m0 *= m/g; a0 %= m0; if( a0 < 0 )a0 += m0; return true;}/* * 无解返回false,有解返回true; * 解的形式最后为 a0 + m0 * t (0<=a0<m0) */bool MLES(int &m0,int &a0,int n) //解为 X = a0 + m0 * k{ bool flag = true; m0 = 1; a0 = 0; for(int i = 0; i < n; i++) if( !solve(m0,a0,m[i],a[i]) ) { flag = false; break; } return flag;}
阅读全文
1 0
- 邝斌的ACM模板(模线性方程组)
- 邝斌的ACM模板(素数)
- 邝斌的ACM模板(求逆元)
- 邝斌的ACM模板(FFT)
- 邝斌的ACM模板(RMQ )
- 邝斌的ACM模板(树链剖分)
- 邝斌的ACM模板(高斯消元法求方程组的解)
- 邝斌的ACM模板(高斯消元(浮点数))
- 邝斌的ACM模板(目录篇)
- 邝斌的ACM模板(KMP算法)
- 邝斌的ACM模板(扩展 KMP)
- 邝斌的ACM模板(AC 自动机)
- 邝斌的ACM模板(后缀数组)
- 邝斌的ACM模板(后缀自动机)
- 邝斌的ACM模板(字符串 HASH)
- 邝斌的ACM模板(欧拉函数)
- 邝斌的ACM模板(整数拆分)
- 邝斌的ACM模板(Baby-Step Giant-Step)
- 网易2017内推 [编程题]独立的小易@Java
- Brother打印机的安装
- Log4j配置文件的加载
- 01.Python基础知识
- SqueezeNet网络的OHEM
- 邝斌的ACM模板(模线性方程组)
- 电机驱动电路总汇
- iOS 算法面试题(打印2-100之间的素数、求两个整数的最大公约数、查找字符串的位置)~demo
- python学习之函数的参数
- angular4开发环境搭建以及项目启动过程
- CodeForces 703D Mishka and Interesting sum
- 菠萝的成绩单(结构体快排)
- 解决x64机器上IE11版本使用IEDriverServer在输入英文/数字很慢的问题
- 学习solidity的一个简单智能合约(1)——投票