机试用到的数学知识和技巧

  1. 裴蜀定理:说明了对于任何整数a,b和他们的最大公约数d=gcd(a,b),关于未知数x,y的线性不定方程。即若a,b是整数,且d=gcd(a,b),那么对于任意整数x,y,ax+by都一定是d的倍数。由此可知,一定存在x,y,使ax+by=d成立,即ax+by=d一定有解。
    重要推论:a,b互质的充要条件是存在整数x,y,使ax+by=1。

  2. 扩展欧几里得定理:对于不完全为 0 的整数 a,b,gcd(a,b)表示 a,b 的最大公约数。那么一定存在整数 x,y 使得 gcd(a,b)=ax+by。 题源:HDU-1495/上交2019机试第二题
    具体推导
    ax1+by1=gcd(a,b)
    bx2+(a mod b)y2=gcd(b,a mod b)=gcd(a,b)
    ax1+by1=bx2+(a mod b)y2
    ax1+by1=bx2+[a-(a/b)*b]y2
    ax1+by1=ay2+b[x2-(a/b)*y2]
    x1=y2,y1=x2-(a/b)*y2
    扩展欧几里得、同余方程学习

  3. 如果一个数a与他的相反数做与运算,即a&(-a),可得如下结果:
    a. 若a是奇数,则结果必为1;
    b. 若a是偶数,则获得该数的最低非零位;

待增加……

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章