235. 算術幾何數列
題目
Problem 235: An Arithmetic Geometric sequence
Given is the arithmetic-geometric sequence u(k) = (900-3k)rk-1.
Let s(n) = Σk=1...nu(k).Find the value of r for which s(5000) = -600,000,000,000.
Give your answer rounded to 12 places behind the decimal point.
分析
根據題目,我們有:
當 r = 1 時, ,不符合題目要求。
當 r ≠ 1 時, 。
前一項使用了等比數列的求和公式,後一項請參見《具體數學:電腦科學基礎(第2版)》第 28 頁。
根據題目,我們有:
上式進行移項並乘以 就得到:
經整理後得到以下一元 5001 次方程:
經過簡單的計算,得知這個方程的一個實根是 1,另一個實根比 1 稍大。我們的目的就是求出這個實根。
解答
根據以上分析,我們有以下 Haskell 程式:
import Text.Printf ( printf )
main = let eps = 1e-12 :: Double in printf "%.12f\n" $ fst $ until
(\(a,b) -> b-a < eps/2) (\(a,b) -> let x = (a+b)/2 in if f x < 0
then (x,b) else (a,x)) (1, 2) where
f r = 4700*r**5001-4701*r**5000-2e11*r*r+(4e11+300)*r-2e11-299
簡要說明:
- 最後一行就是我們前面推匯出來的 5001 次整係數多項式。
- 然後簡單地使用二分法在區間 (1,2) 內求根。
這個程式的執行時間是 0.002 秒。
進階
根據代數基本定理,一元 n 次方程正好有 n 個複數根。而我們這道題目中涉及到的實係數一元 5001 次方程有多少個實數根?此外,這個 5001 次整係數多項式的函式影像整體上是怎樣的呢?
注意,實係數多項式函式的定義域是全體實數,最高項的次數為奇數時,值域也是全體實數。而且多項式函式處處有導數,也就是說它的影像是光滑的,上圖中兩個看上去不光滑的點,區域性放大後必然是光滑的。其中右邊那個區域性放大後如下圖所示。
從上圖可以看出,這個一元 5001 次方程有三個實數根,分別是:r1 = r2 = 1,r3 = 1.002322108... 。
參考資料
相關文章
- 計算幾何
- 計算幾何:模板
- 計算幾何模板
- 【IDL】幾何圖形數學運算函式函式
- [筆記] 計算幾何筆記
- 計算幾何 —— 二維幾何基礎 —— 距離度量方法
- 【計算幾何】向量表示
- 【總結】計算幾何模板
- 二維幾何常用運算
- 二維計算幾何模板
- 【計算幾何】線段相交
- 三維計算幾何模板
- Something about 計算幾何
- POJ 1113 Wall(思維 計算幾何 數學)
- 丘成桐演講全文:幾何與計算數學的關係
- 【學習筆記】計算幾何筆記
- 計算幾何_向量的實現
- 【計算幾何】多邊形交集
- 計算幾何——平面最近點對
- IV.4 代數幾何
- 百度造車,勝算幾何?
- POJ - 1556 【計算幾何 + 最短路】
- An Easy Problem?! POJ 2826 計算幾何
- 計算幾何常用的函式/方法函式
- 邊緣計算、霧計算、雲端計算區別幾何?
- 數學趣題:平面幾何(一)
- 數學趣題:平面幾何(二)
- BNUOJ 12887 isumi(計算幾何+最大流)
- SGU 124 Broken line(計算幾何)
- 【計算幾何】Triangles HUST 1607
- 【計算幾何】多邊形點集排序排序
- 搜尋的未來 谷歌勝算幾何谷歌
- C++計算幾何演算法大全C++演算法
- POJ 2991 Crane(線段樹+計算幾何)
- 【計算幾何】點在多邊形內部
- POJ 1556 The Doors(Dijkstra+計算幾何)
- 計算機圖形學(四)_幾何變換_1_基本的二維幾何變換(一)計算機
- 梯度下降背後的數學原理幾何?梯度