Rumah > Artikel > pembangunan bahagian belakang > Program C untuk nombor Catalan ke-n
Diberi interger n; tugasnya ialah mencari Nombor Catalan pada kedudukan ke-n itu. Jadi, sebelum melakukan program kita mesti tahu apa itu Nombor Catalan?
Nombor Catlan ialah jujukan nombor asli, yang berlaku dalam bentuk pelbagai masalah nombor pengiraan.
#🎜🎜 #Nombor Catalan C0, C1, C2,… Cn didorong oleh formula −$$c_{n}=frac{1}{n+1}binom{2n}{n} = frac{ 2n!}{(n+1)!n!}$$Beberapa nombor Catalan untuk setiap n = 0, 1, 2, 3, … ialah1, 1, 2 , 5, 14, 42, 132, 429, 1430, 4862, …
Jadi jika kita memasukkan n =3 kita sepatutnya mendapat 5 sebagai output daripada program# 🎜🎜#
Beberapa daripada beberapa aplikasi nombor Catalan−
Mengira bilangan pokok n kekunci yang mungkin .Input: n = 6 Output: 132 Input: n = 8 Output: 1430解决给定问题的方法
输城🎜#输城🎥如果n
循环从i=0到iStart Step 1 -> In function unsigned long int catalan(unsigned int n) If n <= 1 then, Return 1 End if Declare an unsigned long variable res = 0 Loop For i=0 and i<n and i++ Set res = res + (catalan(i)*catalan(n-i-1)) End Loop Return res Step 2 -> int main() Declare an input n = 6 Print "catalan is : then call function catalan(n) Stop
#include <stdio.h> // using recursive approach to find the catalan number unsigned long int catalan(unsigned int n) { // Base case if (n <= 1) return 1; // catalan(n) is sum of catalan(i)*catalan(n-i-1) unsigned long int res = 0; for (int i=0; i<n; i++) res += catalan(i)*catalan(n-i-1); return res; } //Main function int main() { int n = 6; printf("catalan is :%ld</p><p>", catalan(n)); return 0; }
Atas ialah kandungan terperinci Program C untuk nombor Catalan ke-n. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!