118.楊輝三角(Python)
1291 ワード
タイトル
難易度:★☆☆☆タイプ:配列
負でない整数numRowsが与えられ、楊輝三角の前*numRows*行が生成される.
楊輝三角では、各数は左上と右上の数の和である.
例
入力:5
出力:
に答える
この問題は簡単で,簡単なループネストで実現できるが,ここでは初期化過程に注意しなければならない.
質問やアドバイスがあれば、コメントエリアへようこそ~
難易度:★☆☆☆タイプ:配列
負でない整数numRowsが与えられ、楊輝三角の前*numRows*行が生成される.
楊輝三角では、各数は左上と右上の数の和である.
例
入力:5
出力:
[
[1],
[1,1],
[1,2,1],
[1,3,3,1],
[1,4,6,4,1]
]
に答える
この問題は簡単で,簡単なループネストで実現できるが,ここでは初期化過程に注意しなければならない.
class Solution:
def generate(self, numRows):
if numRows == 0: # 0, []
return []
if numRows == 1: # 1,
return [[1]]
if numRows == 2: # 2,
return [[1], [1, 1]]
res, prev_layer = [[1], [1, 1]], [1, 1] #
for r in range(2, numRows):
cur_layer = [] #
for i in range(0, len(prev_layer)-1):
cur_layer.append(prev_layer[i]+prev_layer[i+1]) #
cur_layer = [1] + cur_layer + [1] # 1
res.append(cur_layer) #
prev_layer = cur_layer #
return res
質問やアドバイスがあれば、コメントエリアへようこそ~