51 nod 中国剩余定理
来源:互联网 发布:linux删除用户组命令 编辑:程序博客网 时间:2024/06/06 00:15
题目:点击打开链接
前提是除数数组m[i]是两两互质的。
x=a [ i ](mod m[ i ]) wi=M/mi,wi*Pi=1(mod mi)
ans=a1w1P1+a2w2P2+……ajwjPj
#include<cstdio>#include<cmath>#include<iostream>#include<algorithm>#define ll long longusing namespace std;const int maxn=105;void gcd(ll a,ll b,ll &d,ll &x,ll &y){ if(!b){d=a;x=1;y=0;} else{ gcd(b,a%b,d,y,x);y-=x*(a/b);}}ll a[maxn],m[maxn];ll china(int n, ll* a, ll* m){ ll M = 1, d, y, x = 0; for(int i = 0; i<n; i++) M *= m[i]; for(int i = 0; i<n; i++){ ll w = M / m[i]; gcd(m[i], w, d, d, y); x = (x + y*w*a[i]) % M; } return (x+M)%M;}int main(){ int n; scanf("%d",&n); for(int i=0;i<n;i++) scanf("%lld%lld",&m[i],&a[i]); printf("%lld\n",china(n,a,m)); return 0;}
阅读全文
0 0
- 51nod 中国剩余定理
- 51nod--中国剩余定理
- 51 nod 中国剩余定理
- 51nod 1079 中国剩余定理
- 51nod 1079 中国剩余定理
- 51nod--1079 中国剩余定理
- 51nod 1079 中国剩余定理
- 51nod:1079 中国剩余定理
- 51nod 1079 中国剩余定理
- 51nod 1079 中国剩余定理
- 51nod-1079中国剩余定理
- 51nod 1079 中国剩余定理
- 51nod 1079 中国剩余定理
- 51nod 1079 中国剩余定理
- 51Nod-1079-中国剩余定理
- 51nod-1079 中国剩余定理
- 51Nod-1079-【数学】中国剩余定理
- 51nod 1079 中国剩余定理
- 洛谷 P1122 最大子树和
- 求二叉树的深度
- Github生成SSH key并加入管理
- HDU1452:Happy 2004(数论 & 唯一分解)
- 卡片-问题和答案
- 51 nod 中国剩余定理
- 开始一个好的习惯
- 从零开始···spring整合redis配置
- 106 定积分习题复习及应用(本系列课程上册圆满结束)
- Java中的位运算符
- 面向接口编程 二
- jquery的一些事
- 【安全牛学习笔记】存储型XSS漏洞原理及修复方法
- 关于import与import...as与from...import