1905 楊輝三角

2021-09-01 17:41:42 字數 1457 閱讀 8651

1

1 11 2 1

1 3 3 1

1 4 6 4 1

1 5 10 10 5 1

input

輸入資料報含多個測試例項,每個測試例項的輸入只包含乙個正整數n(1<=n<=30),表示將要輸出的楊輝三角的層數。

output

對應於每乙個輸入,請輸出相應層數的楊輝三角,每一層的整數之間用乙個空格隔開,每乙個楊輝三角後面加乙個空行。

sample input23

sample output

11 1

11 1

1 2 1

通過觀察可以開出規律,即處於楊輝三角內部的數等於其上一行與其對應的兩個數的和,而三角形的兩條邊上全部是1。

可以通過類似矩陣生成式的方法生成乙個元素全為0的三角,再向其中填入數字,如:

00 0

0 0 0

**:

while1:

n=int(

input()

) l=

for i in range(1

,n+1):

l.([

0for j in range

(i)]

) l[0]

[0]=

1for i in range(1

,n):

l[i][0

]=1 l[i][-

1]=1

for i in range(2

,n):

for j in range(1

,i):

l[i]

[j]=l[i-1]

[j-1

]+l[i-1]

[j]for i in l:

for j in i:

print

(j,end=

' ')

print()

print

()

第二種方法,利用二項式定理中的二項式係數,即組合數。

利用階乘來定義乙個組合數的函式。

楊輝三角的行數為組合數下面的數,列數即上面的數。

**:

def c(n,m):

x=1y=1

if m==0 or n==0:

return (1)

else:

for i in range(n-m+1,n+1):

x=x*i

for j in range(1,m+1):

y=y*j

return int((x/y))

while 1:

l=int(input())

for a in range(l):

for b in range(a+1):

print(c(a,b),end=' ')

print(end='\n')

print(end='\n')

python楊輝三角 楊輝三角I II

給定乙個非負整數 numrows,生成楊輝三角的前 numrows 行。在楊輝三角中,每個數是它左上方和右上方的數的和。示例 輸入 5 輸出 1 1,1 1,2,1 1,3,3,1 1,4,6,4,1 可以一行一行錯位加,當然這裡提供更簡便的方法。任取一行描述 1,2,1 如何得到 1,3,3,1 ...

Java 楊輝三角

public class yanghui 生成指定行數的楊輝三角形 param lines 楊輝三角形的行數 public void printyanghui int lines if lines 30 int line new int lines int maxlen getmaxlen line...

輸出楊輝三角

程式的版權和版本宣告部分 檔名稱 fibnacci.cpp 作 者 單虹毓 完成日期 2013 年 12 月 4 日 版本號 v1.0 輸入描述 無 問題描述 楊輝三角 程式輸出 1 第0列和對角線上的元素都為1。程式輸出 2 除第0列和對角線上的元素以外,其它元素的值均為前一行上的同列元素和前一列...