数论与组合数学.pptVIP

  • 79
  • 0
  • 约7.36千字
  • 约 46页
  • 2019-01-06 发布于湖北
  • 举报
数论与组合数学 主讲内容 数论 解模线性方程 解模线性方程组(中国剩余定理) 欧拉函数,欧拉定理 组合数学 鸽巢原理 全排列的生产 catalan数 polya计数 数论入门 解模线性方程: 求解方程 ax = b (%n) 其中a,b,n已知,求x 解法: 欧几里德方法求gcd: gcd(a,b) = gcd(b,a%b); //循环计算式,直到b==0. 扩展欧几里德: ax = b(%n) == ax + ny = b 的整数解 设 d=gcd(a,n),则方程等价为 ax + ny = b; (a = a/d ; n = n/d ; b = b/d;需要d | b,不整除无解 ) 如何解ax+ny = b? ax+ny=b 的解是 ax+ny=1 的解的b倍 观察欧几里德循环过程: ax + ny = 1 与 gcd(a,n)=gcd(n,a % n); 方程 nx+(a % n)y=1 的解与ax+ny=1的解 是否可以通过某种变换使得x=f(x),y=g(y); 答案是显然的: y = x; x = x - [a/n]*y; 注意到a % n = a - [a/n]*n,自己演算一下就知道了 Ex_gcd(a,b,n) int ex_gcd(int a,int b,int x,int y) { int t,rec; if ( b==0

文档评论(0)

1亿VIP精品文档

相关文档