18 UVA10268 498
內容
給你一組方程式和X求微分後的值
翻閱“線上法官問題集檔案”,我發現了一個非常有趣的問題,編號為 498,標題為“Polly the Polynomial”。 坦白說,我沒有解決它,但是我從中衍生出了這個問題。
這個問題中的所有內容都是 498 中某些內容的衍生。特別是,498 是「…旨在幫助您記住…基本代數技能,讓世界變得更美好等等」。 這個問題旨在幫助你記住基本的代數推導技能,提高世界變得更美好的速度等等。
在 498 中,你必須評估多項式的值
a0x^n + a1x^n−1 + . 。 。 + an−1x + an。
在這個問題中,你應該評估它的導數。 請記住,導數定義為
a0nx^n−1 + a1(n − 1)x^n−2 + 。 。 。 + an−1。
所有輸入和輸出資料都將適合整數,即其絕對值將小於2^31。
輸入說明
每組測資有兩行第一行為X第二行為潛水(降冪)
第二行最後面會先有空格在換行
您的程式應該接受偶數行文字。 每對線代表一個
問題。 第一行將包含一個整數 - x 的值。 第二行將包含一個列表
整數a0, a1, ..., an−1, an,表示一組多項式係數。
輸入以 EOF 終止。
輸出說明
求出微分後的值
對於每一對線,您的程式應該計算給定值 x 的多項式的導數
並將其輸出在一行中。
範例輸入#1
7
1 -1
2
1 1 1
範例輸出 #1
1
5
題意:給你一組方程式和X求微分後的值
while True: # 這是一個無限迴圈,直到程式執行中斷或者遇到 break 指令
try: # 嘗試執行以下程式碼
x = int(input()) # 讀取一個整數 x
A = list(map(int, input().strip().split())) # 讀取一行數字,將其轉換為整數列表 A
ans = 0 # 初始化答案為 0
n = len(A) - 1 # n 為列表 A 的長度減 1
for i in range(n): # 迴圈從 0 到 n-1
ans += A[i] * (n-i) * pow(x, n-1-i) # 計算答案,依照公式 A[i] * (n-i) * x^(n-1-i) 加總到 ans
print(int(ans)) # 輸出答案(整數形式)
except: # 如果遇到錯誤(例如無法轉換為整數或者列表長度不足),則執行以下程式碼
break # 跳出迴圈,結束程式的執行