推荐星级:
  • 1
  • 2
  • 3
  • 4
  • 5

中国剩余定理的实战应用:同余方程组与线性求逆元.docx

资料介绍

中国剩余定理的实战应用:同余方程组与线性求逆元

中国剩余定理(CRT)是数论中一个古老而重要的定理,它解决"多个同余方程联立"的问题。在模数两两互质的前提下,中国剩余定理可以高效地求出满足一组同余条件的最小解。它在密码学、整数分拆、算法竞赛中有广泛应用。

同余方程组问题的引入

生活中常有这类问题:某个数除以3余2,除以5余3,除以7余2,这个数最小是多少?这正是同余方程组:

 

中国剩余定理解决的就是这种"多个同余条件"的联立求解。它的强大之处在于:只要模数两两互质,就一定有唯一解(在模乘积的范围内),并且这个解可以高效构造出来。

中国剩余定理的实现

实现中国剩余定理的关键是求出  在模  下的逆元 ,可用扩展欧几里得算法完成。

  c
// 扩展欧几里得:求 ax+by=gcd(a,b)
long long exgcd(long long a, long long b, long long& x, long long& y) {
    if (b == 0) { x = 1; y = 0; return a; }
    long long g = exgcd(b, a % b, y, x);
    y -= a / b * x;
    return g;
}

// 中国剩余定理:模数两两互质
long long crt(vector<long long>& a, vector<long long>& m) {
    long long M = 1;
    for (auto mm : m) M *= mm;
    long long ans = 0;
    for (int i = 0; i < m.size(); i++) {


部分文件列表

文件名 大小
中国剩余定理的实战应用:同余方程组与线性求逆元.docx 40K

全部评论(0)

暂无评论

上传资源 上传优质资源有赏金

  • 打赏
  • 30日榜单

推荐下载