4 2 多項式求值 15分 PTA

2021-07-31 02:25:12 字數 1270 閱讀 6332

本題要求實現乙個函式,計算階數為n,係數為a[0]...a[n]的多項式f(x)=\sum_^(a[i]\times x^i)f(

x)=∑

​i=0

​n​​

(a[i

]×x​

i​​)

x點的值。

double f( int n, double a, double x );
其中n是多項式的階數,a中儲存係數,x是給定點。函式須返回多項式f(x)的值。

#include #define maxn 10

double f( int n, double a, double x );

int main()

/* 你的**將被嵌在這裡 */

2 1.1

1 2.5 -38.7

-43.1

思路:我感覺乙個初學者如果能想出來的話,肯定是巢狀的for迴圈 ,程式在下面。程式本身應該是沒錯的,但是時間複雜度是o(n2),所以第三個測試樣例沒通過,執行超時。這就要求你去優化,想出用時更小的**。(關於時間複雜度我也只是略懂一點0.0)

程式一:

時間複雜度 o(n2)

double f( int n, double a, double x )

else

}sum = sum + a[i]*b;

}return sum;

}

程式二:

時間複雜度 o(n)

double f( int n, double a, double x )

return sum;    

}

4 2 多項式求值 15分

函式介面定義 double f int n,double a,double x 其中n是多項式的階數,a中儲存係數,x是給定點。函式須返回多項式f x 的值。很自然的就會反應出一種愚蠢的解法,是這樣的想法 double f int n,double a,double x 這種解法如此自然,還能得到有...

4 2 多項式求值 15分

本題要求實現乙個函式,計算階數為n,係數為a 0 a n 的多項式f x sum a i times x i f x i 0 n a i x i 在x點的值。double f int n,double a,double x 其中n是多項式的階數,a中儲存係數,x是給定點。函式須返回多項式f x 的值...

4 2 多項式求值 15分

本題要求實現乙個函式,計算階數為n,係數為a 0 a n 的多項式f x sum a i times x i f x i 0 n a i x i 在x點的值。double f int n,double a,double x 其中n是多項式的階數,a中儲存係數,x是給定點。函式須返回多項式f x 的值...