01/10/2018, 13:30
Vẽ 30 dòng tam giác Pascal
cho em hỏi làm sao để vẽ tam giác pascal 30 dòng với ạ,em viết thường tính theo giai thừa thì nó chạy có mười mấy dòng,mà viết đệ quy thì nó quá lâu,giới hạn có đc 1 s.Ai chỉ cho em vs ạ
Bài liên quan
#include <stdio.h>
#include <stdlib.h>
long pl (int k,int n)
{
if (k==0||k==n)
return 1;
else return pl( k, n-1 ) + pl( k-1, n-1 );
}
int main()
{
int n;
int i,k;
scanf("%d",&n);
for (i=0;i<=n;i++)
{
for (k=0;k<=i;k++)
{
printf("%ld “,pl(k,i));
}
printf(”\n");
}
return 0;
}
#include <stdio.h>
#include <stdlib.h>
long long giaithua (int n)
{
int i;
long long gt=1;
if (n==1||n==0)
return 1;
for (i=1;i<=n;i++)
{
gt=gt*i;
}
return gt;
}
int main()
{
int n;
int i,k;
scanf("%d",&n);
for (i=0;i<=n;i++)
{
for (k=0;k<=i;k++)
{
printf("%lld “,giaithua(i)/(giaithua(k)*giaithua(i-k)));
}
printf(”\n");
}
return 0;
}
Áp dụng công thức C(k, n) = C(k, n-1) + C(k-1, n-1) để tính. Độ phức tạp O(n^2).
thanks,để em thử đã,nghe mong lung quá