計數是組合數學中常見的一類問題。為了實現無重複無遺漏的計數,可以計先算出總數,再排除不符合條件的數目。 本文介紹了容斥原理的基本定理,並給出了證明,並對廣義容斥原理進行了說明,最後用廣義容斥原理解決了在限制條件下的路徑組合問題,有較強的背景意義。
容斥原理是一種重要的組合數學方法,可以求解任意大小的集合,或者計算復合事件的概率。在計數時,必須注意無一重複,無一遺漏。為了使重疊部分不被重複計算,研究出一種新的計數方法。這種方法的基本思路是:先不考慮重疊的情況,把包含於某內容中的所有物件的數目先計算出來,然後再把計數時重複計算的數目排斥出去,使得計算的結果既無遺漏又無重複,這種計數的方法稱為容斥原理.要計算幾個集合並集的大小,我們要先將所有單個集合的大小計算出來,然後減去所有兩個集合相交的部分,再加回所有三個集合相交的部分,再減去所有四個集合相交的部分,依此類推,一直計算到所有集合相交的部分。
假設n是一些目標的集合,並令s1
,和s2
是n的每個目標可能具有或者不具有的2個性質,我們的目的是為了求出n中即不具有性質s1
,也不具有性質s2
的目標的個數按照容斥原理的的原則,我們可以採用下列的步驟:
—-先求出n中所有物體的個數,然後去掉具有性質s1
,的目標個數,再去掉具有性質s2
的物體個數,如果一些目標同時具有s1
和s2 這2種性質,它們就會被去掉2次,那麼我們需要再加回這些目標的個數,用符號表示如下 a1
=n⋂s
1 a2
=n⋂s
2 集合a
1¯⋂a
2¯表示既沒有s1
特徵,也沒有s2
特徵的目標。根據集合論,很容易得到。
按照這種理論可以把多個特徵推廣到n維,那麼可以得到以下的定理 定理1 集合n中不具有n個特徵的目標個數將有下列公式給出 |a
1¯⋂a
2¯..
.an¯
|=|n
|−σ1
≤i≤n
|ai|
+σ1≤
i≤j≤
n|ai
⋂aj|
−...
(−1)
m|a1
⋂a2.
..⋂a
n|運算規律就是多個的組合,正負性是根據組合數的奇偶性決定的,奇數為負,偶數為正。\
證明: n=2的情況,上述已經討論過了,現在假設n=3,則根據公式可以推導出,\ |a
1¯⋂a
2¯⋂a
n¯|=
|n|−
(|a1
|+|a
2|+|
a3|)
+(|a
1⋂a2
|+|a
1⋂a3
|+|a
3⋂a2
|)−|
a1⋂a
2⋂a3
| \這裡看到該公式有1+3+3+1=8項.
當n為一般時,該式的左邊是對n中的不具有性質si
(i=1,2,…,n)的物體計數,通過證明增添1
個性質s
i 都不具有的物體會使公式的右邊淨增加,增添1個至少具有1個性質的物體使公式的右
邊淨增0來建立公式的合理性.
首先,新增1個性質si
都不具有的物體x,公式右邊的淨增加數為:1-0+0-0+0-..-+ (一
1)m 0=1;因為它在s中而不在其他子集ai
中.考慮恰好具有n(n≥
1 )個性質si
;(i=1,2,…,n)的物體r,r這乙個物體在|n|中所佔數量是1=
c0n ..由於r恰有n個性質,它為子集a1
,a2 ,a3
,an 中恰好n個的成。它對|a
i|提供的值為n=
c1n 。由於我們可以以¥c2
n 種方式選擇r具有一對性質si
sj ,而r恰好是形式為ai
⋂aj 那些集合中的c2
n 個成員,因此,r給σa
i⋂aj
那些集合提供c2
n 個成員,同理,r對給σa
i⋂aj
⋂ak 提供數值為c3
n 等等,於是r對公式(1)右邊的淨增為\ c0
n−c1
n+c2
n−..
.+(−
1)m∗
cmn
由於 n≤m
,上式等於c0
n−c1
n+c2
n−..
.+(−
1)m∗
cmn =
(1−1
)m= 0.因此,如果r至少具有乙個性質,那麼它對公式(1)右邊的淨增數為0,定理得證。
給定乙個有限的無向圖g = (v, e) ,這裡v是頂點集, e是邊集,且完全子圖定義為:它的頂點是v的子集,在這些頂點中任兩點都有e中的邊相連線. 乙個具有k個頂點的完全子圖稱為乙個完全k-子圖. 下面假定2≤k≤n,其中n是g的頂點數,頂點v∈v 的次數記為d(v) ,定義為以v作為乙個端點的邊數. 顯然,若乙個圖g不包含完全k-子圖,則存在關於它的頂點的次數和它的邊數的某些限制,zarankiewicz的證明採用了反證法,巧妙的應用了容斥原理的對偶形式得到乙個與題設矛盾的結論。\
此外,應用容斥原理可以求出圖頂點染色的色多項式.\
假設有4個頂點的圈,頂點和邊數依次為v=
a,b,
c,d,
e=(a
,b),
(b,c
),(c
,d),
(d,a
)=e1
,e2,
e3,e
4,計性質a1
,a2,
a3,a
4 分別為a−
b,b−
c,c−
d,d−
a 染色相同,現有x種色彩,染色的要求是相鄰的頂點不能是同一種顏色,正常染色的數目記為p(g,x)(稱為色多項式)則p(
g,x)
=n(a
1⋂a2
⋂a3⋂
a4) =x|
v|+σ
|e|i
=1n(
ai)+
σn(a
i⋂aj
)−σa
i⋂aj
⋂ak+
n(a1
⋂a2⋂
a3⋂a
4)\
用容斥原理可得 p(
g,x)
=x4−
4x3+
6x2−
4x+x
=x4−
4x3+
6x2−
3x首先定義集合n和性質a1
,a2,
...a
n 令ℵ(
0)=|
n| ℵ
(1)=
σ|ai
| ℵ(
2)=σ
|ai⋂
aj|
…. ℵ(n
)=|a
1⋂a2
...⋂
an|
則 α(m
) 計數了具有m+k個性質的元素cm
+km 次。
定理 廣義容斥原理定義如下:給定集合n和性質a1
,a2,
...a
n ,則βm
定義為集合n中恰有m個性質的個數 βm
=ℵm−
cm+1
mℵm+
1+cm
+2mℵ
m+2.
...(
−1)n
−mcn
mℵn
考慮特殊情況,當m=0的時候,即可得到以下公式: β0
=ℵ0−
ℵ1+ℵ
2...
(−1)
n∗ℵn
也就是上述討論的沒有相同元素的交集情形。
容斥原理 數論
兩個集合的容斥關係公式 a b a b a b a b 重合的部分 三個集合的容斥關係公式 a b c a b c a b b c c a a b c 最後可以推廣到n個集合,集合裡的元素為奇數則加,偶數減 hdu 4135 很簡單,直接求出所有的質因子,然後容斥解決 author crystal ...
容斥原理,反演
大概知道為什麼自己水平比較渣啦。一開始只會反演,然後被容斥驚豔到。然後寫了一段時間容斥,反演忘光光。所以融會貫通真的很難。多校的三道題,當時是用反演做的。事實上以前就知道容斥跟莫比烏斯函式值的關係,然後熟練掌握 然後一段時間沒用就忘了哈。簡單來說就是,求乙個數和乙個集合中的數互質的個數,把集合中乙個...
關於容斥原理
容斥原理大概是這樣的,以長方體體積並為例,我們需要用容斥原理容斥出若干個長方體體積的並.首先,我們將每個長方體標號為1 n,那麼這些長方體的取捨顯然可以表示為乙個二進位制的數字s.設f s 表示長方體取捨狀態為s時,長方體的體積並,於是我們可以知道f 111111 有n個1 就是我們最終的所求.好,...