1. 程式人生 > >[CSP初賽] 組合數學的三個技巧以及從另一方面思考組合類問題

[CSP初賽] 組合數學的三個技巧以及從另一方面思考組合類問題

也不知道老師講不講 話說好久沒有水部落格了,看了一點$python$然後就去搞文化課了 正好網課講到組合數學,然後覺得還蠻難的(其實是我變菜了),就想到了以前的$csp$的組合數學基礎 果然被我找到了,**插板法,插空法和捆綁法** ~~就從數學作業裡找例題吧~~ 最後還有關於**四個人選三個專案的情況數**與**三個人選四個專案的情況數**這兩種問題如何用進位制解決 ~~感覺把部落格寫成參考書了呢~~ ## 前置芝士 ### 階乘 $n!=1*2*3*...*(n-1)*n$ ### 組合數 組合數的定義:從$n$個不同元素中任取$m$個的所有組合的個數為$C_{n}^{m}$ $C_{n}^{m} = \frac{n!}{m!(n-m)!}$ ### 排列數 排列數的定義:從$n$個元素中任取$m$個元素的所有排列的個數為$A_{n}^{m}$ $A_{n}^{m} = \frac{n!}{(n-m)!}$ 可以發現組合數只強調選出的組合的數量,而排列還要求組合裡的元素有序(小聲$bb$和後文無關哈) # 插板法 ### 適用範圍:$n$個相同物品分為不同的$m$組 必須是相同物品!!! ### 問題 > 現在有四隻一模一樣佳愛琉,有十一個一模一樣神探要解開佳愛琉的死亡謎題,神探之間可以合作,但是每隻佳愛琉的謎題必須有至少一個神探解謎,求有多少種搭配的方法呢 插板法的名字起的很形象啊,我們要做的就是插板求解這一問題 那怎麼插板呢 首先我們將十一個神探小朋友一字擺開 ![](https://img2020.cnblogs.com/blog/1803578/202003/1803578-20200318212218623-819865500.png) 因為他們是一模一樣的,而佳愛琉也都是一模一樣的,所以我們不妨認為,每個佳愛琉的神探,都是左右相鄰的 比如下面這樣就是一種分組方案 ![](https://img2020.cnblogs.com/blog/1803578/202003/1803578-20200318212648380-1880358649.png) 怎麼樣,是不是很像在每組神探之間插入了一塊板子 那我們就可以把問題轉化成插三塊板子有多少種方案 這三個板子有十個位置可插,不妨把這十個位置叫成$1,2,3...$ 那我們就可以進一步把問題轉化成,在這十個數字中任選三個 這個問題很好求解,答案就是$C_{10}^{3} = \frac{10!}{3!7!} = 120$ ### 基本模型 這類題目可以抽象出如下模型 >把$n$個**相同**物品分成**不同**的$m$組的方案數為$C_{n-1}^{m-1}$ ## 插板法的變形 ### 變形一與變形二 為什麼放到一起??? 當然是因為太像了啊 >有四隻小狗,叫豆豆一號,豆豆二號……有十一個一模一樣的屁桃(一種桃子),現在要把屁桃分給豆豆們,有的豆豆可能分不到,請問有多少種分配方案 這個好像和模型不太一樣,怎麼辦 那當然就是把它變得和模型一樣嘍 我們發現最多會有三隻豆豆沒分到屁桃,太可憐了,乾脆先給四隻豆豆每人發一個屁桃~~然後再收回來~~ 那這樣就會多出四個屁桃,所以問題就變成了十五個屁桃,四隻豆豆,每隻豆豆至少一個屁桃 然後就可以很輕易地抽象出模型: >把$15$個**相同**物品分成**不同**$4$組,有幾種方案 答案是$C_{14}^{3}$ ~~欸?好像忘了把屁桃收回來了,真是餵了狗了~~ >有四隻小狗,叫豆豆一號,豆豆二號……有十一個一模一樣的屁桃(一種桃子),現在要把屁桃分給豆豆們,鑑於上一題中豆豆們太可憐,現在要求每隻豆豆最少兩個屁桃,請問有多少種分配方案 有上一題的啟發就好辦多了嘛,我們先給每隻豆豆一個屁桃 問題變為有七個屁桃,要分給四隻豆豆,每隻豆豆至少一個,有多少種方案,這不就是基本模型嗎 ### 變形三 >停電了,單元樓的樓梯有$11$個臺階,為了防止隔壁的老奶奶散步回來看不到路,豆豆要在樓梯上放三支蠟燭,每個臺階上只能放一個,相鄰的臺階不能都放(因為作用不大),請問有多少种放置的方案 $emmmm$又變得和模型不一樣了,怎麼辦呢 我們的思路還是把沒見過的模型轉換成我們會的模型 我們稍微把題目裡的主人公們換一換,我們把蠟燭換成板子,把臺階換成神探 怎麼樣,是不是很熟悉,這不就是用$3$塊板子把八位神探分成四組嘛 等等,是不是漏了什麼??? 哦對了,這個題裡我們可以把板子插在最左邊和最右邊 答案就是$C_{7+2}^{3}$ # 捆綁法 和乘法原理很像的 ### 適用範圍 用於解決某幾個物品必須在一起的排列問題 ### 問題 >豆豆有好多書啊,有全套七本哈利波特,四本數學課本和三本課外雜誌。出於對魔法世界的敬畏,豆豆必須要把哈利波特擺在一起,在數學老師的淫威之下(其實我們的數學老師人很好的QWQ),也必須把數學課本擺在一起,請問有幾種擺放方法呢 我們要把不會的轉變成我們會的 把哈利波特當做一個整體$A$,把數學課本當做一個整體$B$,剩下的三本雜誌是$CDE$ 然後問題就轉換成了五個字母,有多少種排列的方法 答案是$A_{5}^{5}$ 但是哈利波特的七本也是不同的啊,所以$A$內部的擺放方法有$A_{7}^{7}$ 同理,數學課本也有$A_{4}^{4}$種,這就是典型的分步乘法 所以最終答案是$A_{5}^{5}A_{4}^{4}A_{7}^{7}$ ### 基本模型 >有$n$個物品,其中有$m$個物品$A$必須擺在一起,擺放方案數為$A_{n-m+1}^{n-m+1}A_{m}^{m}$ 要注意必須在一起的物品有沒有順序要求哦,如果沒有要求,答案就是$A_{n-m+1}^{n-m+1}$ # 插空法 其實是插板法的變形 ### 適用範圍 用於某幾個物品不能在一起的問題 ### 問題 >屁桃和豆豆吵架了,恰好這天全球七大蠢蛋要在一起照相,豆豆和屁桃當然不想挨在一起照相,請問有多少種拍照的方式呢 還是老思路啦,化不會的為會的 怎麼辦呢 既然屁桃和豆豆這麼倔,那不如我們把他倆當做兩塊頑固的板子吧 問題變成了兩塊板子把五個蠢蛋分成三組,每組最少一個人,有多少種方案 容我細細思考,發現板子可以插在最左邊和最右邊 答案就是$C_{6}^{2}$ # 總結 相同物品分組用插板法 存在相鄰物品用捆綁法 存在不鄰物品用插空法 ### 千萬注意考慮兩端能否插板的問題 # 一些其它問題的獨特思考方法和思路 其實是一些自己發現的奇技淫巧(很多人應該本來就會吧 >三個運動員,要報名兩個專案,每個人只能且必須報一項,請問有幾種報名方案 如何判斷這個問題的答案是$2^3$還是$3^2$呢,以下是從資訊奧賽的角度進行理解 受到答案形式的啟發($3^2$或$2^3$)我們考慮採用轉換進位制的方法 二進位制數$111_2$的大小是多少呢?簡單運算一下發現是$7$ 運算方法$2^0+2^1+2^2$,為了方便我們表示為$2^3-1$ 那麼比$7$小的自然數有幾個呢?八個,即$2^3-1+1 = 2^3$ 他們的二進位制形式分別是 $000$,$001$,$010$,$011$,$100$,$101$,$110$,$111$ 觀察一下,有什麼發現? 這八個數,就是用$0$和$1$組成一個三位數的所有情況 那我們再深入思考,我們用$0$表示參加專案$A$,用$1$表示參加專案$B$ 用第一位數表示第一個人,第二位數表示第二個人,第三位數表示第三個人 那麼以上八個數字就是所有的情況了,可見共有八種情況,也就是$2^3$種 第一個$2$表示可以選的專案數,我們把選專案$A$或$B$叫做運動員的狀態,那第一個$2$就是狀態數 第二個$3$就是運動員的數目 同樣的,如果是三個運動員報名四個專案,我們可以表示成$4^3 - 1 + 1 = 4^3$ ### 總而言之,面對沒見過的奇怪的題,我們要想辦法把它轉化成我們熟悉的形式 不知道怎麼分類,隨手扔到數論區裡吧~ 啊我要去睡覺了,