Вызов
Задача состоит в том, чтобы написать программу, которая принимает коэффициенты любого полиномиального уравнения n-степени в качестве входных данных и возвращает интегральные значения x, для которых выполняется уравнение. Коэффициенты будут предоставлены в качестве входных данных в порядке убывания или увеличения мощности. Вы можете считать все коэффициенты целыми числами .
Вход и выход
Входными данными будут коэффициенты уравнения в порядке убывания или увеличения мощности. Степень уравнения, т. Е. Максимальная мощность x, всегда на 1 меньше, чем общее количество элементов на входе.
Например:
[1,2,3,4,5] -> represents x^4 + 2x^3 + 3x^2 + 4x + 5 = 0 (degree = 4, as there are 5 elements)
[4,0,0,3] -> represents 4x^3 + 3 = 0 (degree = 3, as there are 3+1 = 4 elements)
Ваши выходные данные должны быть только различными целочисленными значениями x, которые удовлетворяют данному уравнению. Все входные коэффициенты являются целыми числами, и входной многочлен не будет нулевым многочленом . Если для данного уравнения нет решения, то результат не определен.
Если уравнение имеет повторяющиеся корни, отобразите этот конкретный корень только один раз. Вы можете вывести значения в любом порядке. Также предположим, что ввод будет содержать как минимум 2 числа.
Примеры
[1,5,6] -> (-3,-2)
[10,-42,8] -> (4)
[1,-2,0] -> (0,2)
[1, 1, -39, -121, -10, 168] -> (-4, -3, -2, 1, 7)
[1, 0, -13, 0, 36] -> (-3, -2, 2, 3)
[1,-5] -> (5)
[1,2,3] -> -
Обратите внимание, что уравнение во втором примере также имеет корень 0,2, но он не отображается, поскольку 0,2 не является целым числом.
счет
Это код-гольф , поэтому выигрывает самый короткий код (в байтах)!