acm入門必備基本數學定理

1.歐幾里得算法求最大公約數

def gcd(a,b):
    if b == 0:
        return a
    return gcd(b,a%b)

2.篩法求素數

def pr01():
    ls = []
    for i in range(1,101):
        ls.append(i)
    for i in ls:
        for j in ls:
            if j%i ==0 and j!=i:
                ls.remove(j)

3.康託展開

def pr02():
    ls = [3,4,1,5,2]
    cont = [0,0,0,0,0]
    k = 0
    for i in ls:
        for j in ls[k+1:]:
            if i > j:
                cont[k]+=1
        k += 1
    print(cont)

同餘定理

a、b同餘可以表示爲
a≡b(mod m)
1.反身性:a≡a (mod m);

2.對稱性:若a≡b(mod m),則b≡a (mod m);

3.傳遞性:若a≡b(mod m),b≡c(mod m),則a≡c(mod m);

4.同餘式相加:若a≡b(mod m),c≡d(mod m),則a c≡b d(mod m);

5.同餘式相乘:若a≡b(mod m),c≡d(mod m),則ac≡bd(mod m)。

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