楊輝三角形 (用陣列和遞迴)
問題
/*基礎練習 楊輝三角形
時間限制:1.0s 記憶體限制:256.0MB
關鍵字:基礎練習 二維陣列
問題描述
楊輝三角形又稱Pascal三角形,
它的第i+1行是(a+b)i的展開式的係數。
它的一個重要性質是:
三角形中的每個數字等於它兩肩上的數字相加。
下面給出了楊輝三角形的前4行:
1
1 1
1 2 1
1 3 3 1
給出n,輸出它的前n行。
輸入格式
輸入包含一個數n。
輸出格式
輸出楊輝三角形的前n行。每一行從這一行的第一個數開始依次輸出,中間使用一個空格分隔。請不要在前面輸出多餘的空格。
樣例輸入
4
樣例輸出
1
1 1
1 2 1
1 3 3 1
資料規模與約定
1 <= n <= 34。
*/
程式碼:
/*執行超時
#include<stdio.h>
int yang(int x,int y){
int result;
if(y==x||y==1)
result=1;
else{
result=yang(x-1,y)+yang(x-1,y-1);
}
return result;
}
int main()
{
int n;
scanf("%d",&n);
int i,j,result;
for(i=1;i<=n;i++)
{
//定義的行
for(j=1;j<=i;j++){
result=yang(i,j);
printf("%d ",result);
}
printf("\n");
}
return 0;
}
*/
//正確答案
#include<stdio.h>
int a[35][35];
int main()
{
int i,j,n;
scanf("%d",&n);
for(i=1;i<=34;i++){
for(j=1;j<=i;j++){
if(j==1||j==i)
a[i][j]=1;
else
a[i][j]=a[i-1][j]+a[i-1][j-1];
}
}
for(i=1;i<=n;i++){
for(j=1;j<=i;j++){
printf("%d ",a[i][j]);
}
printf("\n");
}
return 0;
}
相關文章
- 楊輝三角與陣列遞迴累加陣列遞迴
- 陣列分割,把陣列分割成和相等的兩部分--遞迴方法陣列遞迴
- Golang 遞迴列印楊輝三角Golang遞迴
- 如何遞迴實現陣列求和遞迴陣列
- 一道遞迴陣列面試題遞迴陣列面試題
- 遞迴求解陣列中的最大值遞迴陣列
- php陣列轉xml的遞迴實現PHP陣列XML遞迴
- awk 陣列和迴圈陣列
- 楊輝三角形
- 實驗四:採用一維陣列輸出等腰三角形的楊輝三角。陣列
- 遞迴和尾遞迴遞迴
- 斐波那契數列的遞迴和非遞迴實現遞迴
- 迴圈陣列最大子段和陣列
- linux awk 陣列和迴圈Linux陣列
- 斐波那契數列(Fibonacci)遞迴和非遞迴實現遞迴
- 陣列迴圈陣列
- 前端演算法題:JS遞迴實現楊輝三角前端演算法JS遞迴
- Java 從陣列來看值傳遞和引用傳遞Java陣列
- Shell自學二(引數傳遞和陣列)陣列
- 陣列迴圈移位陣列
- 資料結構與演算法——歸併排序: 陣列&連結串列&遞迴&非遞迴解法全家桶資料結構演算法排序陣列遞迴
- 遞迴的列印和階乘運用遞迴
- php url傳遞陣列PHP陣列
- 使用python生成楊輝三角形Python
- 【遞迴打卡2】求兩個有序陣列的第K小數遞迴陣列
- php對陣列進行全排列的非遞迴演算法PHP陣列遞迴演算法
- JS遞迴過濾樹形結構陣列物件--模糊查詢JS遞迴陣列物件
- JavaScript 中 for in 迴圈和陣列的問題JavaScript陣列
- 【遞迴】小q的數列遞迴
- 遞迴和遞推總結遞迴
- while迴圈和do迴圈、緩衝區、一維陣列While陣列
- 陣列迴圈輸出陣列
- Oracle和Mysql遞迴OracleMySql遞迴
- 漢諾塔和遞迴遞迴
- 遞迴的應用場景和呼叫機制、遞迴需要遵守的重要規則遞迴
- java二維陣列定義初始化-楊輝三角Java陣列
- 遞迴實現指數型列舉遞迴
- 用一層for迴圈初始化三維陣列陣列