• 模方程


      对于 ax≡b( mod n ) 转化为 ax - ny = b , 当 d = gcd( a, n )  不是 d 的约数的时候不存在解,为何不存在解呢?

    设 a = k1*d , n = k2*d .

    那么式子可转化为 :  d * (k1*x - k2*y) = b , 若 b % d != 0 ,即( k1*x - k2*y )无整数解。

      否则,两边除以d , 得到 a'x-n'y = b'  ,  即么 a'x≡b'(mod n')  ( 这里a'和n' 已经是互素的 ),两边再乘上一个

    a' 在 n' 下的逆 , 得到 x ≡ a'^(-1) * b' ( mod n' ) ....   然后要转化为在 n 剩余系中的元素。

          令 a'^(-1)*b' = p , 上述解相当于 x = p , p+n' , p+2*n' .......  对于模n来说,这无穷多个解里面有多少个等价类呢?

    假定 p+i*n' 与 p+j*n' 同余,则 (p+i*n') - (p+j*n')  = (i-j) * n' 是 n 的倍数, 那么i-j必然是 d 的倍数 ( n' * d = n )。

    即,在模n的剩余系当中 , ax≡b( mod n ) 的解有 d 个 ,为 p , p+n' ,p+2*n' ...... ,p+(d-1)*n' 。

    [ p+d*n' 与 p 已经属于同一个等价类了]...

      看完这里...突然想到之前做了一条 hdu 3579...

      给出  n 个 ai , ri ... 都有 x≡ri ( mod ai )...求最小的x..

      这个是中国剩余定理的加强..它没有给出  ri 之间互素的性质..

      解法是两两解线性模方程..

      对于两个方程,易得   a1*x - a2*y = r2 - r1 ...

      设(r2-r1)= c , 通过扩展欧几里得解出 x 之后 , 先判 d=gcd( a1,a2 ) 是否是c的约数..

      各项除去d 得到   a1'*x - a2' *y = c' ... 转换后得到  a1'x ≡ c' ( mod a2' )....

      然后两边乘上 a1'的逆元... 得到 x ≡ a1'^(-1) * c' ( mod a2' )...

      那么要将 x 转化为在 mod a2 的时候的最小解.. 

      此时..   x 在 mod a2' 的时候已经是a1' 的逆元... 

      由求逆方法可以知道:

    LL inv (LL a , LL n ) {
        LL d ,x , y ;
        e_gcd( a,n,d,x,y);
        return d == 1 ? (x+n)%n : -1 ;    
    }

      那么 , 设 p = ( x * c' )   .. 那么 p ( mod a2' ) 就是 x 在 mod a2 的时候的最小解..

      得证 : a1 x=c (mod a2 )  的最小解 : x = ( x * ( c / d ) ) % n ...

      那么在根据模方程来说

        N == a1 *( x + n *( a2 / d ))+r1 ====  N=(a1 * a2 / d ) * n + (a1*x+r1) ..

        n 为未知数 .. 即新方程  N = ( a1*x + r1 ) ( mod ( a1 * a2 / d ) ) ....

        那么解到最后..剩下一方程..要令N最小 ... 那么 N 就是  ( a1*x + r1 ) 本身 ..

    本证明纯属个人想法, 若有错误。希望能够指出~

      

    only strive for your goal , can you make your dream come true ?
  • 相关阅读:
    open()文件对象的seek、tell方法详解 分类: python基础学习 open()文件读写 python Module 2013-09-05 09:40 450人阅读 评论(0) 收藏
    sorted()排序详解 分类: python基础学习 python Module 2013-09-04 17:18 1372人阅读 评论(0) 收藏
    nmon与nmonanalyser 系统性能分析(图表)利器非草稿 分类: 测试 2013-09-04 15:21 668人阅读 评论(0) 收藏
    qemu-img 整理
    [模拟] P1167 刷题
    [线筛] [洛谷] P2640
    [洛谷] P1893 山峰瞭望
    [模拟] 多校赛-开学觉醒赛 G 骰子
    [贪心 + 化学] 多校赛-开学觉醒赛 B
    [模拟] 牛客小白月赛 B 鹏
  • 原文地址:https://www.cnblogs.com/hlmark/p/4066256.html
Copyright © 2020-2023  润新知