Python基礎訓練(二)

2021-10-03 16:07:34 字數 672 閱讀 3082

1. 楊輝三角:楊輝三角形又稱pascal三角形,它的第i+1行是(a+b)i的展開式的係數。它的乙個重要性質是:三角形中的每個數字等於它兩肩上的數字相加。下面給出了楊輝三角形的前4行:

1 11 2 1

1 3 3 1

給出n,輸出它的前n行。

輸入格式

輸入包含乙個數n。

輸出格式

輸出楊輝三角形的前n行。每一行從這一行的第乙個數開始依次輸出,中間使用乙個空格分隔。請不要在前面輸出多餘的空格。

def yanghui(n):

line = [1]

for i in range(n):

yield line

line = [1] + [line[i-1] + line[i] for i in range(1,len(line))] + [1]

def print_line(line):

print(" ".join(str(i) for i in line))

def run():

n = int(input())

for line in yanghui(n):

print_line(line)

run()

備註:(1)關於yield生成器的解讀,參考:

(2)關於楊輝三角的理解,參考:

演算法基礎訓練(二)

1.統計逆序對數 10分 c時間限制 1 毫秒 c記憶體限制 1 kb 題目內容 設a 1.n 是乙個包含n個非負整數的陣列。如果在i j的情況下,有a i a j 則 i,j 就稱為a中的乙個逆序對。要解決的問題是,給出乙個數列,求出這個數列包含多少個逆序對 輸入描述 有多組測試資料,每組資料佔一...

Python基礎訓練(一)

1.閏年判斷 給定乙個年份,判斷這一年是不是閏年。當以下情況之一滿足時,這一年是閏年 1 年份是4的倍數而不是100的倍數 2 年份是400的倍數。其他的年份都不是閏年。n int input if n 4 0 and n 100 0 print yes elif n 400 0 print yes...

Python基礎訓練(一)

profit.py nb float input 請輸入本金 輸入本金並轉換為浮點數 nr float input 請輸入年利率 輸入年利率並轉換為浮點數 ny int input 請輸入年份 輸入年份並轉換為整數 amount nb 1 nr 100 ny print str format 本金利...