切換
舊版
前往
大廳
主題

ZeroJudge - d854: NOIP2001 1.一元三次方程求解

Not In My Back Yard | 2020-04-24 00:58:04 | 巴幣 0 | 人氣 160

題目連結:


題目大意:
給定四個實數 a 、 b 、c 、 d ,代表一個形式為 ax ^ 3 + bx ^ 2 + cx + d = 0 之 一元三次方程式。保證該方程式有三個相異實根解,且三個解之值皆介於 -100 ~ 100 之間。

求此三根之值。請精確至小數點後兩位數,並由小到大輸出。

註:任意兩解之差的絕對值 ≧ 1



範例輸入:
1 -5 -4 20


範例輸出:
-2.00 2.00 5.00


解題思維:
這題的弱化版。而且因為保證有三個相異實根,所以不需要判斷有虛數根或是無窮多解。

此次分享到此為止,如有任何更加簡潔的想法或是有說明不清楚之地方,也煩請各位大大撥冗討論。

創作回應

胖胖貓
題目提到了一個重點:根于根之差的绝对值>=1,所以才能快速地以每個區間 1.0 的方式做勘根,否則當兩根皆落在同個區間時就會出問題。
2020-04-29 00:38:55
Not In My Back Yard
感謝補充,忘記把這個重要資訊放在題目大意裡了QQ
2020-04-29 00:50:10

更多創作