Module: 単調関数の二分探索


Problem

4 /5


三次方程式

Problem

4 つの実数が与えられます: A、B、C、D。方程式 Ax3+Bx2+Cx+D=0 の根をすべて見つけます。この方程式のすべての根の絶対値が 1000 を超えないことが知られています。この方程式の任意の 2 つの根には少なくとも 10-6 の差があることが知られています。
 
入力
プログラムは、入力として 4 つの実数、A、B、C、D を受け取ります。これら 4 つの数値のいずれかが 0 に等しくなりますが、すべてが同時に 0 になることはありません。
 
出力
プログラムは、0 ~ 3 の実数、つまり指定された方程式の根を昇順で出力する必要があります。複数のルートを描画する必要があるのは 1 回だけです。ルート値はドット以降 6 文字の精度で表示する必要があります。
  <本体>
入力 出力
0 0 1000 -1 0.001