機試用到的數學知識和技巧

  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是偶數,則獲得該數的最低非零位;

待增加……

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