ACM數論總結

ACM數論總結數組

http://blog.csdn.net/xieshimao/article/details/6425099函數

斷斷續續的學習數論已經有一段時間了,學得也很雜,如今進行一些簡單的回顧和總結。學習

學過的東西不能忘啊。。。.net

 

一、本原勾股數:blog

概念:一個三元組(a,b,c),其中a,b,c沒有公因數並且知足:a^2+b^2=c^2get

首先,這種本原勾股數的個數是無限的,並且構造的條件知足:原理

a=s*t,b=(s^2-t^2)/2,c=(s^2+t^2)/2程序

其中s>t>=1是任意沒有公因數的奇數!方法

由以上概念就能夠導出任意一個本原勾股數組。im

 

二、素數計數(素數定理)

令π(x)爲1到x中素數的個數

19世紀最高的數論成就就是如下這個玩意兒:

lim(x->∞){π(x)/(x/ln(x))}=1

數論最高成就,最高成就!!!有木有!!!

 

三、哥德巴赫猜測(1+1)

一個大偶數(>=4)必然能夠拆分爲兩個素數的和,雖然目前尚未人可以從理論上進行證實,不過我根據科學家們利用計算機運算的結果,若是有一個偶數不能進行拆分,那麼這個偶數至少是一個上百位的數!!

因此在ACM的世界中(數據量每每只有2^63如下)哥德巴赫猜測是成立的!!因此拆分程序必定可以實現的

 

四、哥德巴赫猜測的推廣

任意一個>=8的整數必定可以拆分爲四個素數的和

證實:

先來講8=2+2+2+2,(四個最小素數的和)不能再找到比2小的素數了,因此當n小於8,就必定不可能拆分爲四個素數的和!

那麼當n大於等於8,能夠分狀況討論:

(1)n&1==0(n爲偶數),那麼n就必定能夠拆分爲兩個偶數的和

那麼根據哥德巴赫猜測,偶數能夠拆分爲兩個素數的和,因而,n必定能夠拆分爲四個素數的和

(2)n&1==1(n爲奇數),n必定能夠拆分爲兩個偶數+1

因爲有一個素數又是偶數,2,那麼奇數必定有以下拆分:2+3+素數+素數

得證。

 

五、歐拉函數(歐拉公式)

歐拉函數ph(n)的意思是全部小於n且與n互質的數的個數

好比說ph(12)=4,[1,5,7,11與12互質]

歐拉公式

a^ph(m)=1(mod m)

 

六、費馬小定理

費馬小定理是歐拉公式的一種特殊狀況

因爲當p爲質數的時候ph(p)=p-1這是顯然的

那麼帶入歐拉公式就獲得了費馬小定理

a^(p-1)=1(mod p)

p爲質數(prime)

 

七、抽屜原理

抽屜原理實際上是廢話,關鍵在於運用

這句廢話是說,若是如今有3個蘋果,放進2個抽屜,那麼至少有一個抽屜裏面會有兩個蘋果,這個很廢話。

 

八、抽屜原理的運用

抽屜原理自己只是一句廢話,不過他的運用卻很是強大

如今假設有一個正整數序列a1,a2,a3,a4.....an,試證實咱們必定可以找到一段連續的序列和,讓這個和是n的倍數,該命題的證實就用到了抽屜原理

咱們能夠先構造一個序列si=a1+a2+...ai

而後分別對於si取模,若是其中有一個sk%n==0,那麼a1+a2+...+ak就必定是n的倍數(該種狀況得證)

下面是上一種狀況的反面,即任何一個sk對於n的餘數都不爲0

對於這種狀況,咱們能夠以下考慮,由於si%n!=0

那麼si%n的範圍必然在1——(n-1),因此原序列si就產生了n個範圍在1——(n-1)的餘數,因而抽屜原理就來了,n個數放進n-1個盒子裏面,必然至少有兩個餘數會重複,那麼這兩個sk1,sk2之差必然是n的倍數,

而sk1-sk2是一段連續的序列,那麼原命題就獲得了證實了

 

九、判斷n!是否可以被m整除

計算方法是把m進行質因數分解,看下m的每個質因數是否可以在n!中找到;

n!中間包含了多少個x(x是任意的一個數,不過通常狀況下咱們都只討論x爲質數),這種問題的答案是: n/x+n/(x^2)+n/(x^3).....[一直加到x的乘方不超過n],這個定理的證實也很是的簡單,這裏就再也不贅述了

根據以上觀點,就能夠分別計算m的每個質因數是否被徹底包含,若是有一個沒有被包含,那麼就不能被整除!

 

十、因子和的計算方法

神馬叫因子和:一個數的因此因子的和就叫因子和。。。

好吧,舉個例子:12的因子和爲:1+2+3+4+6+12

計算方法是把12分解爲質因數的表達形式2^2*3

那麼他的因子和就是:(1+2+2^2)*(1+3)

證實寫起來比較麻煩,大致上思路就是牛頓二項式。。。

 

十一、判斷組合數C(n,m)的奇偶性

有一個我也不知道證實的方法

當n&m==m爲奇數,反之就是偶數

相關文章
相關標籤/搜索