Олимпиадный тренинг

Задача . F. Полином


Вам задан полином в форме p(x) = (x + a1)·(x + a2)·... (x + an). Напишите программу на языке Pike, которая выведет его в стандартном виде p(x) = xn + b1xn - 1 + ... + bn - 1x + bn. Каждое слагаемое должно иметь вид «C*X^K» (например, 5*X^8).

Напишите программу, которая выводит кратчайшую из подобных записей, то есть вы должны опустить необязательные элементы вывода — некоторые слагаемые «C*X^K» могут быть выведены в сокращенном виде или даже опущены. Тесты из условия поясняют задание.

Входные данные

Первая строка содержит целое n (1 ≤ n ≤ 9). Следующие n строк содержат по целому числу ai ( - 10 ≤ ai ≤ 10).

Выходные данные

Выведите многочлен в требуемой форме. Заметим, что в этой задаче ответ определяется однозначно.


Примеры
Входные данныеВыходные данные
1 2
-1
1
X^2-1
2 2
1
1
X^2+2*X+1

time 2000 ms
memory 64 Mb
Правила оформления программ и список ошибок при автоматической проверке задач

Статистика успешных решений по компиляторам
Комментарий учителя