【集合论】容斥原理 ( 复杂示例 )
容斥原理 示例
242424 個人
說英語 , 日語 , 德語 , 法語 的人數 13,5,10,913, 5, 10, 913,5,10,9
同時說 英語 日語 人數 222
同時說 英語 德語 人數 444
同時說 英語 法語 人數 444
同時說 法語 德語 人數 444
說日語的人 不會 法語 德語 ;
求 只會說一種語言的人 ? 同時會說 英語 德語 法語 的人 ?
單個語言集合 :
AAA 集合表示會說英語的人的集合 , ∣A∣=13|A| = 13∣A∣=13 ;
BBB 集合表示會說日語的人的集合 , ∣B∣=5|B| = 5∣B∣=5 ;
CCC 集合表示會說德語的人的集合 , ∣C∣=10|C| = 10∣C∣=10 ;
DDD 集合表示會說法語的人的集合 , ∣D∣=9|D| = 9∣D∣=9 ;
兩兩相交集合 :
A∩BA \cap BA∩B 集合表示會說 英語 日語 的人的集合 , ∣A∩B∣=2|A \cap B| = 2∣A∩B∣=2 ;
A∩CA \cap CA∩C 集合表示會說 英語 德語 的人的集合 , ∣A∩C∣=4|A \cap C| = 4∣A∩C∣=4 ;
A∩DA \cap DA∩D 集合表示會說 英語 法語 的人的集合 , ∣A∩D∣=4|A \cap D| = 4∣A∩D∣=4 ;
C∩DC \cap DC∩D 集合表示會說 德語 法語 的人的集合 , ∣C∩D∣=4|C \cap D| = 4∣C∩D∣=4 ;
會說日語的人 , 既不不會說法語 , 也不會說德語 , 說明集合 BBB 與集合 C,DC, DC,D 都不相交 ;
∣B∩C∣=∣B∩D∣=∣A∩B∩C∣=∣A∩B∩D∣=∣B∩C∩D∣=∣A∩B∩C∩D∣=0|B \cap C| = |B \cap D| = |A \cap B \cap C| = |A \cap B \cap D| = |B \cap C \cap D| = |A \cap B \cap C \cap D| = 0∣B∩C∣=∣B∩D∣=∣A∩B∩C∣=∣A∩B∩D∣=∣B∩C∩D∣=∣A∩B∩C∩D∣=0
總的人數是 242424 人 : ∣A∪B∪C∪D∣=24|A \cup B \cup C \cup D| = 24∣A∪B∪C∪D∣=24
根據容斥原理 :
∣A∪B∪C∪D∣=|A \cup B \cup C \cup D| =∣A∪B∪C∪D∣=
∣A∣+∣B∣+∣C∣+∣D∣| A | + | B | + | C | + | D |∣A∣+∣B∣+∣C∣+∣D∣ 先將單個集合的個數相加
?(∣A∩B∣+∣A∩C∣+∣A∩D∣+∣B∩C∣+∣B∩D∣+∣C∩D∣)- ( | A \cap B | + | A \cap C | + | A \cap D | + | B \cap C | + | B \cap D | + | C \cap D |)?(∣A∩B∣+∣A∩C∣+∣A∩D∣+∣B∩C∣+∣B∩D∣+∣C∩D∣) 減去兩兩相交的元素個數
+(∣A∩B∩C∣+∣A∩B∩D∣+∣A∩C∩D∣+∣B∩C∩D∣)+ ( | A \cap B \cap C | + | A \cap B \cap D | + | A \cap C \cap D | + | B \cap C \cap D |)+(∣A∩B∩C∣+∣A∩B∩D∣+∣A∩C∩D∣+∣B∩C∩D∣) 加上三三相交的元素個數
?∣A∩B∩C∩D∣- |A \cap B \cap C \cap D|?∣A∩B∩C∩D∣ 減去 四個集合相交的元素個數
=24= 24=24
將上面的集合元素個數全部代入 :
∣A∪B∪C∪D∣=|A \cup B \cup C \cup D| =∣A∪B∪C∪D∣=
13+5+10+913 + 5 + 10 + 913+5+10+9 先將單個集合的個數相加
?(2+4+4+0+0+4)- ( 2 + 4 + 4 + 0 + 0 + 4 )?(2+4+4+0+0+4) 減去兩兩相交的元素個數
+(0+0+∣A∩C∩D∣+0)+ ( 0 + 0 + | A \cap C \cap D | + 0 )+(0+0+∣A∩C∩D∣+0) 加上三三相交的元素個數
?0- 0?0 減去 四個集合相交的元素個數
=24= 24=24
計算后得到 :
37?14+∣A∩C∩D∣=2437 - 14 + | A \cap C \cap D | = 2437?14+∣A∩C∩D∣=24
∣A∩C∩D∣=1| A \cap C \cap D | = 1∣A∩C∩D∣=1
同時會說英法德語的人 ∣A∩C∩D∣=1| A \cap C \cap D | = 1∣A∩C∩D∣=1 只有 111 個 ;
計算只會說英語的人 :
∣A∣?∣(B∪C∪D)∩A∣| A | - | ( B \cup C \cup D ) \cap A |∣A∣?∣(B∪C∪D)∩A∣
=∣A∣?∣(B∩A)∪(C∩A)∪(D∩A)∣= |A| - | (B \cap A) \cup ( C \cap A ) \cup ( D \cap A ) |=∣A∣?∣(B∩A)∪(C∩A)∪(D∩A)∣
使用容斥原理 , 計算 ∣(B∩A)∪(C∩A)∪(D∩A)∣| (B \cap A) \cup ( C \cap A ) \cup ( D \cap A ) |∣(B∩A)∪(C∩A)∪(D∩A)∣
∣(B∩A)∪(C∩A)∪(D∩A)∣| (B \cap A) \cup ( C \cap A ) \cup ( D \cap A ) |∣(B∩A)∪(C∩A)∪(D∩A)∣
=(∣B∩A∣+∣C∩A∣+∣D∩A∣)= ( |B \cap A| + |C \cap A| + |D \cap A| )=(∣B∩A∣+∣C∩A∣+∣D∩A∣)
?(∣A∩B∩C∣+∣A∩B∩D∣+∣A∩C∩D∣)- ( | A \cap B \cap C | + | A \cap B \cap D | + | A \cap C \cap D |)?(∣A∩B∩C∣+∣A∩B∩D∣+∣A∩C∩D∣)
+(∣A∩B∩C∩D∣)+ ( |A \cap B \cap C \cap D| )+(∣A∩B∩C∩D∣)
=(2+4+4)?(0+0+1)+(0)=9= ( 2 + 4 + 4) - ( 0 + 0 + 1 ) + ( 0 ) = 9=(2+4+4)?(0+0+1)+(0)=9
∣A∣?∣(B∪C∪D)∩A∣=∣A∣?∣(B∩A)∪(C∩A)∪(D∩A)∣=13?9=4| A | - | ( B \cup C \cup D ) \cap A |= |A| - | (B \cap A) \cup ( C \cap A ) \cup ( D \cap A ) | = 13 - 9 = 4∣A∣?∣(B∪C∪D)∩A∣=∣A∣?∣(B∩A)∪(C∩A)∪(D∩A)∣=13?9=4
只會說英語的人有 444 個 ;
按照上述步驟 , 計算出 其它 只說日語的人 333 個 , 只說 德語 的人 3 個 , 只說法語的人 222 個 ;
總結
以上是生活随笔為你收集整理的【集合论】容斥原理 ( 复杂示例 )的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【Android 高性能音频】hello
- 下一篇: 【集合论】有序对 ( 有序对 | 有序三