簡單組合數學【筆記】

1、從n個數中無序的選擇m個數方案是多少(遞推組合數)

C(n,m)=C(n-1,m)+C(n-1,m-1)
C(n-1,m):第m個數不選,從n-1裏面選擇m個數
C(n-1,m-1):第m個數選,從n-1裏面選擇m-1個數
例題. 洛谷P3414
求C(n,0)+C(n,1)+…+C(n,n)對6662333取模的結果
等價於有n個數求它的子集總和
2^n
因爲選0個+選1個+…+選n個等價於選任意多個,那麼每個元素都可以選或不選。

2、將n個相同的球放到m個不同的袋子裏有多少種方案?

相同的球,隔板法就好了,在n-1個間隔中插入m-1個板

3、將n個不同的球放到m個相同的袋子裏有多少種方案?

dp[i][j]=dp[i-1][j]*m+dp[i-1][j-1]
dp[i][j]表示將第i個球放到j個袋子裏
有兩種放法
dp[i-1][j-1]表示獨立放到一隻袋子裏,所以加上前面i-1個球放到j-1個袋子裏的方法數
dp[i-1][j]*j表示放到前面m個袋子中的任意一個,因爲球的種類是不同的,所以就有j種不同的放法
例題 洛谷P1665

4、將n個不同的球放到m個不同的袋子裏有多少種方案?

dp[i][j]=dp[i-1][j] * j+ dp [i-1] [j-1] * (m-j+1)
與上面唯一不同的就是放到不同的袋子裏去,其它大體都是一樣的,唯獨就是單獨成一袋的情況需要改變
因爲袋子不同,剩下的袋子數就是m-(j-1)只袋子,所以乘上m-j+1
例題 洛谷P1287

5、卡特蘭數(未完待續)
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章