卡特兰数是组合数学中一个常出现在各种计数问题中的数列。
C n = { 1 ( 0 ⩽ n ⩽ 1 ) C 0 C n − 1 + C 1 C n − 2 + . . . + C n − 1 C 0 ( n ⩾ 2 ) C_n=\left\{ \begin{array}{rcl} 1 & & {(0\leqslant n \leqslant 1)}\\ C_0C_{n-1}+C_1C_{n-2}+...+C_{n-1}C_0 & & {(n \geqslant 2)} \end{array} \right. Cn={1C0Cn−1+C1Cn−2+...+Cn−1C0(0⩽n⩽1)(n⩾2)
Var Catalan:array[0..25] of int64; Var n,i,j:longint; Begin read(n); Catalan[0]:=1; Catalan[1]:=1; for i:=2 to n do Begin for j:=0 to i-1 do Begin Catalan[i]:=Catalan[i]+Catalan[j]*Catalan[i-j-1]; end; end; write(Catalan[n]); end.