eolymp
bolt
Попробуйте наш новый интерфейс для отправки задач
Задачи

Решения кубического уравнения

Решения кубического уравнения

Ханна попросила Вас определить все различные действительные корни кубического уравнения следующего вида: \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 Для каждой входной строки вывести все различные действительные решения кубического уравнения в одной строке, отсортировав их по возрастанию. Каждое действительное решение следует округлить до ближайших тысячных и вывести с четырьмя знаками после десятичной точки. Два или более различных действительных решений следует разделять одним пробелом.
Лимит времени 2 секунды
Лимит использования памяти 128 MiB
Входные данные #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
Источник ACM ICM Philippines Multi-Provincial Programming Contest 2013