Logic Building
# Helper function
def catalan(n):
if n == 0:
return 1
result = 0
for i in range(n):
result += catalan(i) * catalan(n - 1 - i)
return result
# Take n
n = int(input("Enter n: "))
# Print Catalan numbers
print(f"First {n} Catalan numbers:")
for i in range(n):
print(catalan(i), end=" ")
print()Output
Enter n: 10 First 10 Catalan numbers: 1 1 2 5 14 42 132 429 1430 4862
Catalan numbers using recursive formula.
Key Concepts:
- C(0) = 1
- C(n) = sum of C(i) * C(n-1-i)
- Recursive calculation