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

Ох, уж эти скобки

Ох, уж эти скобки

Лимит времени 1 секунда
Лимит использования памяти 64 MiB

Математическое выражение записано в виде произведения:

a_2x^2±a_1x±a_0)·(±b_2x^2±b_1x±b_0)·(±c_2x^2±c_1x±c_0)·... .

Внутри каждой из N скобок произведения находится выражение вида: ±a_2x^2±a_1x±a_0, где хотя бы один из коэффициентов a_i (b_i, c_i и т. д., аналогично) не равен нулю.

Требуется составить программу, которая перемножает выражения в скобках и выводит полученную функцию в виде многочлена с приведенными по степеням x слагаемыми, то есть в виде:

±q_2Nx^2N±q_{2N-1}x^{2N-1}...±q_3x^3±q_2x^2±q_1x±q_0.

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

В первой строке входного файла находится число N (1N6).

Во второй строке находится выражение из N пар скобок. Внутри каждой пары скобок находится выражение в виде ±a_2x^2±a_1x±a_0, где ± - это или знак "+", или знак "-". При этом, если какой-то коэффициент равен нулю, то этот коэффициент и соответствующий ему x опускаются в записи вместе с арифметическим знаком и коэффициентом. Если a_i = ±1 и i > 0, то единица не ставится перед соответствующим ему x. Если значение последних (по порядковым номерам) k коэффициентов равно нулю, а значение следующего больше нуля, то знак "+" перед ним отсутствует. Значение каждого из коэффициентов a_i не превышает 10.

В выражении отсутствуют какие-либо пробельные символы (пробел, табуляция). Входной файл заканчивается переводом строки. В случае возникновения вопросов относительно формата входных данных, рекомендуем посмотреть приведенные в условии задачи примеры.

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

В первой строке выходного файла выведите результат раскрытия скобок в исходном выражении в следующем формате:

±q_2Nx^2N±q_{2N-1}x^{2N-1}...±q_3x^3±q_2x^2±q_1x±q_0.

аналогично описанию входного файла.

Следуйте как можно точнее формату, представленному в примерах.

Пример

Входные данные #1
1
(3x^2+2x-1)
Выходные данные #1
3x^2+2x-1