XZ#DERIVATIVE. 求导

提交27 通过1
通过率3.7%
时间限制1000ms
内存限制256MiB

题目描述

题目描述

形如:ax2+bx+c=0ax^2+bx+c=0 的式子,叫做一元二次方程:

  • 对于其等号左边的部分:ax2+bx+cax^2+bx+c,通常叫做多项式。
  • 在这个式子中 xx 的最高次项是 ax2ax^2 这一项,其指数部分是 22,表示 xx 的二次方,因此这个式子也叫做二次多项式。
  • 而对于 bxbx 这一项,其指数部分是 11,表示 xx 的一次方,小于最大的指数 22,因此 bxbx 不是最高次项,不能叫做一次多项式。

而对于 x2x^2xx 前面的数字 aabb,叫做项的系数:

  • aa 在二次项 x2x^2 的前面,因此叫做二次项系数。
  • bb 在一次项 xx 的前面,因此叫做一次项系数。
  • 特别地,任何数的 00 次方结果都是 11,因此 x0=1x^0=1cx0=ccx^0=c,所以 cc00 次项系数。

根据上文的定义,类似地,我们可以定义 nn 次多项式为最高次项是 nn 次方项的多项式,其形式为 a0x0+a1x1+a2x2+...+anxna_0x^0+a_1x^1+a_2x^2+...+a_nx^n,其中:

  • 对于每一项 aixia_ix^i,它是 nn 次多项式中的第 ii 次项。
  • aia_iii 次项系数,本题中以数组 a0,a1,a2,...,ana_0,a_1,a_2,...,a_n 的形式给出。

除此之外,还可以对多项式定义求导操作,一个 nn 次多项式求导 11 次的过程如下:

  • 对于 0in0\leq i\leq n 的每一项 aixia_ix^i,令 ai=ai×ia_i=a_i\times i
  • 然后,对于 0i<n0\leq i<n 的每一项 aixia_ix^i,令 ai=ai+1a_i=a_{i+1};特别地,令 an=0a_n=0
  • 例如,多项式 4+7x+9x24+7x+9x^2 求一次导后的结果就是 7+18x+0x27+18x+0x^2,舍弃系数为 00 的项,即为 7+18x7+18x

现在,小珅和小泽得到一个 nn 次多项式,再给定一个整数 kk,你需要输出将这个 nn 次多项式求导 kk 次后的结果。

注意:求导一次后的多项式仍然是一个多项式。

在本题中输出多项式时遵循以下规则:

  • 对于第 ii 项中的 xix^i 应当以 x^i 的形式输出,例如:x3x^3 输出为 x^3
  • i=1i=1,则在输出第 11a1x1a_1x^1 的时候,必须省略掉 ^1,直接输出 a*x,例如:4x14x^1 输出为 4*x
  • i=0i=0,则在输出第 00a0x0a_0x^0 的时候,必须直接输出 00 次项系数,例如:3x03x^0 输出为 3
  • 对于 0in0\leq i\leq n,除了上述规则,在输出 aixia_ix^i 的时候还需要遵循:
    • ai=0a_i=0,则直接省略第 ii 项不输出;
    • ai>0a_i>0,则输出 +a*x^i,而如果第 ii 项是第一个系数不为 00 的项,则必须省略加号,输出 a*x^i,例如:0+4x+7x20+4x+7x^2 输出为 4*x+7*x^2
    • ai<0a_i<0,则输出 -a*x^i,负号不能省略,例如:3x+5x2-3x+5x^2 输出为 -3*x+5*x^2
    • ai=1a_i=1ai=1a_i=-1,则需要省略数字 11 和乘号,但必须保留正负号,输出 +x^i-x^i,除非 ai=1a_i=1 并且是第一个不为 00 的项,这个时候输出 x^i
    • 如果所有项的系数都为 00,则输出一个 0 代表结果。

输入格式

第一行输入两个整数 n,kn,k,分别表示多项式的次数和求导次数。

第二行输入 n+1n+1 个整数 a0,a1,...,ana_0,a_1,...,a_n,表示多项式中每一项的系数。

输出格式

按照题目描述中的格式,输出求导 kk 次后的多项式。

2 0
1 -1 5
1-x+5*x^2
3 1
4 0 5 2
10*x+6*x^2
3 2
4 0 5 2
10+12*x

数据范围

0n10000\le n\le 10000k1000\le k\le 100109ai109-10^9\le a_i\le 10^9

0 0
0
0
1 1
-1 1
1