#2575. 算法提高 多项式输出

算法提高 多项式输出

题目描述

一元 nn 次多项式可用如下表达式表示:

$$f(x)=a_nx^n+a_{n-1}x^{n-1}+\cdots+a_1x+a_0 \quad (a_n\ne0)$$

其中,aixia_ix^i 称为 ii 次项,aia_i 称为 ii 次项的系数。给出一个一元多项式各项的系数,请按照规定格式输出该多项式。

输出规则如下:

  1. 多项式中自变量为 x,从左到右按照次数递减顺序输出。
  2. 多项式中只包含系数不为 00 的项。
  3. 如果最高次项系数为正,则多项式开头不出现 + 号;如果最高次项系数为负,则多项式以 - 号开头。
  4. 对于不是最高次的项,以 +- 连接此项与前一项,分别表示此项系数为正或负。
  5. 对于高于 00 次的项,如果系数绝对值为 11,则无需输出 1
  6. 如果 x 的指数大于 11,指数部分输出为 x^b;如果指数为 11,输出为 x;如果指数为 00,仅输出系数。
  7. 多项式开头、结尾不含多余空格。

输入格式

输入共两行。

第一行一个整数 nn,表示一元多项式的次数。

第二行有 n+1n+1 个整数,其中第 ii 个整数表示第 ni+1n-i+1 次项的系数,每两个整数之间用空格隔开。

输出格式

输出一行,按题目所述格式输出多项式。

样例

5
100 -1 1 -3 0 10
100x^5-x^4+x^3-3x^2+10

数据范围

1n1001 \le n \le 100,多项式各次项系数的绝对值均不超过 100100

来源

蓝桥杯练习系统