No.550 夏休みの思い出(1)

レベル : / 実行時間制限 : 1ケース 2.000秒 / メモリ制限 : 256 MB / 通常問題
タグ : / 解いたユーザー数 56
作問者 : kuuso1kuuso1 / テスター : btkbtk

0 ProblemId : 1282 / 出題時の順位表

プロローグ

夏休みと言えば,筆者が子供の頃は夏休みの宿題には計算ドリルにて大量の計算演習が課されたものです.
これは夏休みの宿題ということで,二次方程式の演習を山のように出題されたある年の夏の日の出来事です.

kuuso少年「さすがに毎日毎日二次方程式ばかり解くのは飽きたわ」
神様「ではこれでどうじゃ?」
天から声が聞こえたかと思ったら,目の前の計算ドリルが突然光り輝きました.
眩しさに目を閉じ,しばらくして恐る恐る目を開けるとそこにはなんだか見慣れない問題の載った計算ドリルがあります.

kuuso少年「なんだったんだろう,今の光は.まぁいいや」
ひとりごちて計算ドリルを開くとそこに見慣れない違和感を感じました.

(問)次の三次方程式を解け
$X^3 - 6X^2 +11X -6 = 0$

どうやら神様の気まぐれによって次数が1上がってしまったようです.
まだ三次方程式は習ってないのに,どうすればいいのかすっかり絶望してしまったkuuso少年.
神様「これはおまけじゃ,ほっほー」
気づくと問題文の続きにヒントのような文面が追記されていました.

問題文

整数係数の三次方程式$ X^3 + A X^2 + BX + C = 0 $ が与えられます.
与えられる三次方程式は$3$つの相異なる整数解 $\alpha$,$\beta$,$\gamma$ を $-10^9 < \alpha , \beta , \gamma < 10^9$ にもつことが保証されています.
この$3$つの整数解を全て求め,小さいものから昇順に出力して下さい.

入力

$A$ $B$ $C$


入力は全て整数であり,それぞれは以下の制約を満たす.
$-10^{18} < A,B,C < 10^{18}$
方程式 $X^3 + AX^2 + BX + C = 0$ は相異なる3つの整数解 $\alpha , \beta , \gamma$ を持ち,
$-10^{9} < \alpha , \beta , \gamma < 10^{9}$ を満たすことが保証される.

出力

相異なる3つの整数解 $\alpha , \beta , \gamma$ を半角スペース区切りで昇順に出力して下さい.
最後に改行してください.

サンプル

サンプル1
入力
0 -1 0
出力
-1 0 1


与えられた三次方程式は $ X^3 - X = 0 $ になります.
$ X(X-1)(X+1) = 0 $ と変形することで 解は $ X = -1,0,1$ であることが分かります.

サンプル2
入力
-6 11 -6
出力
1 2 3


与えられた三次方程式は $ X^3 - 6X^2 + 11X - 6 = 0 $ になります.
$ (X-1)(X-2)(X-3) = 0 $ と変形することで 解は $ X = 1 , 2 , 3$ であることが分かります.
一般に整数係数の$n$次方程式は相異なる解を$n$個見つけることが出来れば,それより他に存在しないことが保証されます.

サンプル3
入力
113405 -128550416 -177999416460
出力
-114514 -810 1919


昇順だからね,仕方ないね.

提出ページヘ