母函式問題是組合數學中非常經典的問題,大概是本科二年級的課程,非常有意思的一門課,當然也是非常精深的一門課。
對於序列a0,a1,a2。…建構函式g(x):
則稱函式g(x)是序列a0,a1,a2。…的母函式。
非常明顯,依據二項展開式。非常easy知道(1+x)^n是序列c(n,0),c(n,1),…,c(n,n)的母函式。假設已知序列a0,a1。a2,…則相應的母函式g(x)便可依據定義給出。
反之。如若已經求得序列的母函式g(x),則該序列也隨之確定。 將序列a0,a1。a2,…記為
對於母函式這一類問題,事實上求解的思路非常清晰,最關鍵的問題就是怎樣模擬多項式的展開。
以郵票問題為例。編碼實現。
輸入為乙個整型數值n。輸出用1分、2分、3分…n分的郵票組合出數值n的方案數。
/*
name:
author: lijiansong
date: 06/08/15 17:38
description:
組合數學,母函式問題,求用1分、2分、3分、4分等的郵票貼出數值n的方案數。
*/#include
using
namespace
std;
const
int num=10000;
// c1表示各項質量砝碼能夠組合的數目
// c2是中間量。表示每一次的情況
int c1[num+1],c2[num+1];
int main()
for(int i=2;i<=n;++i)
for(j=0;j<=n;++j)
}cout
0;}
組合數學之母函式一(卡特蘭數)
卡特蘭數公式 2.乙個棧 無窮大 的進棧序列為1,2,3,n,有多少個不同出棧序列?分析 1 對於每個數來說,必須進棧一次,出棧一次。我們把進棧設為狀態 1 出棧設為狀態 0 n個數的所有狀態對應n個1和n個0組成的2n位二進位制數。由於等待入棧的運算元按照1,n的順序排列,入棧的運算元b大於等於出...
組合數學 母函式
在數學中,某個序列的母函式 generating function,又稱生成函式 是一種形式冪級數,其每一項的係數可以提供關於這個序列的資訊。使用母函式解決問題的方法稱為母函式方法。母函式可分為很多種,包括普通母函式 指數母函式 l級數 貝爾級數和狄利克雷級數。對每個序列都可以寫出以上每個型別的乙個...
組合數學問題
監獄有連續編號為1.n的n個房間,每個房間關押乙個犯人,有m種宗教,每個犯人可能信仰其中一種。如果相鄰房間的犯人的宗教相同,就可能發生越獄,求有多少種狀態可能發生越獄 輸入兩個整數m,n.1 m 10 8,1 n 10 12 可能越獄的狀態數,模100003取餘 6種狀態為 000 001 011 ...