Data commit
This commit is contained in:
parent
7387c8f97b
commit
cb5bb5e222
199093 changed files with 3378972 additions and 0 deletions
31
Task/Catalan-numbers/GAP/catalan-numbers.gap
Normal file
31
Task/Catalan-numbers/GAP/catalan-numbers.gap
Normal file
|
|
@ -0,0 +1,31 @@
|
|||
Catalan1 := n -> Binomial(2*n, n) - Binomial(2*n, n - 1);
|
||||
|
||||
Catalan2 := n -> Binomial(2*n, n)/(n + 1);
|
||||
|
||||
Catalan3 := function(n)
|
||||
local k, c;
|
||||
c := 1;
|
||||
k := 0;
|
||||
while k < n do
|
||||
k := k + 1;
|
||||
c := 2*(2*k - 1)*c/(k + 1);
|
||||
od;
|
||||
return c;
|
||||
end;
|
||||
|
||||
Catalan4_memo := [1];
|
||||
Catalan4 := function(n)
|
||||
if not IsBound(Catalan4_memo[n + 1]) then
|
||||
Catalan4_memo[n + 1] := Sum([0 .. n - 1], i -> Catalan4(i)*Catalan4(n - 1 - i));
|
||||
fi;
|
||||
return Catalan4_memo[n + 1];
|
||||
end;
|
||||
|
||||
|
||||
# The first fifteen: 0 to 14 !
|
||||
List([0 .. 14], Catalan1);
|
||||
List([0 .. 14], Catalan2);
|
||||
List([0 .. 14], Catalan3);
|
||||
List([0 .. 14], Catalan4);
|
||||
# Same output for all four:
|
||||
# [ 1, 1, 2, 5, 14, 42, 132, 429, 1430, 4862, 16796, 58786, 208012, 742900, 2674440 ]
|
||||
Loading…
Add table
Add a link
Reference in a new issue