python編程題
該答案為組合數學中著名的卡特蘭數,其通式為C(2n,n)-C(2n,n-1)
這里採用遞推關系求解,即動態規劃的方法
設n對父子有d[n]種出場策略,注意初值d[0]=1
因為每個孩子前面必有一個父親與之對應
對於i對父子,遍歷第j個孩子,該孩子前面有j-1個孩子,對應d[j-1]種出場策略
後面有i-j個孩子,對應d[i-j]種出場策略,則d[i]+=d[j-1]*d[i-j],最終d[n]即為所求
python代碼如下:
n = int(input())
d = [0] * (n+1)
d[0] = 1
for i in range(n+1):
for j in range(i+1):
d[i] += d[j-1] * d[i-j]
print(d[n])
運行結果如下:
望採納~
② Python編程題怎麼寫
Python編程題寫法:第一個問題使用排序演算法,有很多種,可以使用簡單一點的冒泡排序。第二個問題為了確保是輸入了5個整數,可以使用while循環+try。
假設data.txt中所有的號碼都在一行,沒有換行,寫入到data_asc.txt中時,假設每行一個,原文件中是否有換行;寫入到data_asc.txt文件中時,是一行一個;還是所有的都在一行,然後用英文逗號隔開。
Python
是完全面向對象的語言。函數、模塊、數字、字元串都是對象。並且完全支持繼承、重載、派生、多繼承,有益於增強源代碼的復用性。Python支持重載運算符和動態類型。相對於Lisp這種傳統的函數式編程語言,Python對函數式設計只提供了有限的支持。有兩個標准庫(functools, itertools)提供了Haskell和Standard ML中久經考驗的函數式程序設計工具。
③ 一道簡單的python編程題
按照題目要求編寫的哥德巴赫猜想的Python程序如下
def IsPrime(v):
if v>=2:
for i in range(2,v//2+1):
if v%i==0:
return False
else:
return True
else:
return False
n=int(input("輸入一個正偶數:"))
if n>2 and n%2==0:
for i in range(1,n//2+1):
if IsPrime(i)==True and IsPrime(n-i)==True:
print("%d=%d+%d" %(n,i,n-i))
else:
print("輸入數據出錯!")
源代碼(注意源代碼的縮進)
④ 求一道python編程題
time="13時4分20秒"
i=time.find("時")
hour=time[:i]
j=time.find("分")
minute=time[i+1:j]
k=time.find("秒")
second=time[j+1:k]
print('{0:0>2s}:{1:0>2s}:{2:0>2s}'.format(hour,minute,second))