1. 第m行第k个数
第m行有m项,m是正整数,因此k一定不会大于m,这个需求需要保存m行的数据,那么可以使用一个嵌套结构[[],[],[]]
m=int(input('行>>>'))
k=int(input('第几个数>>>'))
triangle=[]
for i in range(m):
row=[1] #所有行都以1开头
triangle.append(row)
if i==0:
continue
for j in range(1,i):
row.append(triangle[i-1][j-1]+triangle[i-1][j])
row.append(1)
print("--------------------------------")
print(triangle)
print("--------------------------------")
print("第%d行第%d个数为:%d"%(m,k,triangle[m-1][k-1]))
2. m行k列的值,C(m-1,k-1)组合数
组合数方式:根据杨辉三角的定理,第n行的m个数(m>0且n>0)可表示为C(n-1,m-1),即为从n-1个不同元素中取m-1个元素的组合数
组合数公式:有m个不同的元素,任意取n(n≤m)个元素,记作C(m