Полином вида

Код:
P(X) = SUM(i=0..n) a[i]*x^i

задан массивом a.
Требуется: найти любое его нетривиальное разложение на множители-полиномы так, чтобы их было максимальное из возможных количеств.
Нетривиальным называется разложение, в записи которого отсутствуют единицы.
То есть 1*x^2 - тривиальное разложение.
Интересно, как решать. Кто может - помогите.