Задачі
Розв`язки кубічного рівняння
Розв`язки кубічного рівняння
Ханна попросила Вас визначити усі різні дійсні корені кубічного рівняння наступного виду:
\textbf{Ax^3 + Bx^2 + Cx + D = 0}
Розв'язання задачі може бути ускладнено, якщо один з розв'язків рівняння ірраціональний. Але перед тим як Ви почнете жалітися, Ханна повідомила Вам, что вона буде давати лише кубічні рівняння, які мають хоча б один цілочисельний розв'язок.
Вам потрібно знайти усі різні дійсні розв'язки кубічного рівняння з заданими коефіцієнтами \textbf{A}, \textbf{B}, \textbf{C} та \textbf{D}, де \textbf{A }не дорівнює\textbf{ 0}.
Значення \textbf{A}, \textbf{B}, \textbf{C} та \textbf{D} змінюються від \textbf{-2000000} до \textbf{2000000}. Значення \textbf{x} змінюється від \textbf{-1000000} до \textbf{1000000}.
\InputFile
Перший рядок містить ціле число \textbf{N} (\textbf{0} < \textbf{N} < \textbf{100}). Далі йде \textbf{N} рядків. Кожен рядок містить чотири числа \textbf{A}, \textbf{B}, \textbf{C} та \textbf{D}, не обов'язковно цілих, \textbf{A} не дорівнює \textbf{0}.
\OutputFile
Для кожного вхідного рядка вивести усі різні дійсні розв'язки кубвчного рівняння у одному рядку, відсортувавши їх за зростанням. Кожен дійсний розв'язок слід округлити до найближчих тисячних і вивести з чотирма знаками після десяткової крапки. Два чи більше різних дійсних розв'язки слід відокремлювати одним пропуском.
Вхідні дані #1
3 1.5 -5 2 -1.5 2 -7 7 -2 2 0 0 0
Вихідні дані #1
3.0000 0.5000 1.0000 2.0000 0.0000