卡塔蘭數的定義:
⑴ 第 0 項為 1;
⑵ 第 1 項為 1;
⑶ 第 n 項的計算公式:
cn = c0×cn-1 + c1×cn-2 + c2×cn-3 + … + cn-1×c0
卡特蘭數是從第0項開始,其前10項為:1, 1, 2, 5, 14, 42, 132, 429, 1430, 4862
問題:編寫函式ctl,計算並輸出卡特蘭數的前 n 項(n>=3),每個數後面跟乙個空格
**:(編寫函式ctl,完善以下**)
#include
using namespace std;
int main()
輸入格式:
卡特蘭數的項數n
輸出格式:
卡特蘭數的前n項,數之間用乙個空格分隔
輸入樣例:
10輸出樣例:
1 1 2 5 14 42 132 429 1430 4862
#include
using
namespace std;
void
ctl(
long*,
int)
;longan(
int)
;int
main()
void
ctl(
long
*p,int n)
; p=a;
int i,j;
for(i=
0;i) a[i]=an
(i);
for(i=
0;i) cout<<<
" ";
}longan(
int n)
OJ經典題目 卡特蘭數
卡特蘭數又稱卡塔蘭數,卡特蘭數是組合數學中乙個常出現在各種計數問題中的數列。以比利時的數學家歐仁 查理 卡塔蘭 1814 1894 的名字來命名。原理如下 設h n 為catalan數的第n 1項,令h 0 1,h 1 1,catalan數滿足遞推式 2 h n h 0 h n 1 h 1 h n ...
卡特蘭數,高精度卡特蘭數
簡單介紹 卡特蘭數是組合數學中常常出現的乙個數列。個人認為不管是遞推公式還是代表的含義都比斐波那契數列難理解一些。遞推公式 應用 1.cn表示長度2n的dyck word的個數。dyck word是乙個有n個x和n個y組成的字串。且全部的字首字串皆滿足x的個數大於等於y的個數。下面為長度為6的dyc...
卡特蘭數和超級卡特蘭數
這篇部落格主要是想講一下超級卡特蘭數 大施洛德數 順帶就想講一下卡特蘭數.卡特蘭數記為 c n c 1 1 forall n geq 2,c n sum c i c 前幾項大概是 1,1,2,5,14,42,132.直接遞推未免效率太低,我們考慮用生成函式優化.顯然有 c x c x 2 x 解得 ...