2537 两个一元多项式求和
Time Limit : 2000/1000 MS(Java/Others) | Memory Limit : 65536/32768 KB(Java/Others)
Submits : 3 | Solved : 0
Description
通常在数学中对一元n次多项式可表示成如下形式:
给定一个多项式,在C语言中可以用可读的形式将该多项式规范地输出。例如,给出系数
1 5 22 4 33 3 1 1 -1 0,输出为x^5+22x^4+33x^3+x-1。
所使用的规则如下:
(1)多项式各项按照指数的递减顺序输出
(2) 次数出现在^之后,如 3x^2
(3)常数项仅输出常数。
(4)如果所有的项都是以0作为系数,则仅输出常数0,否则输出非零系数的项。
(5)如果第1项的系数是正数,在该项前没有符号;如果第1项的系数是负数,在该项前是减号,如 2x^4+3x^2-10,-2x^4+3x^2-10。
(6)非常数项系数为1和-1不用显示,如 x^7-10x^2,-x^2-x+2。
Input
输入包含多组数据,每组两行,分别表示两个多项式。对每一项输入系数和指数,按指数从高到低的顺序输入。系数和指数的大小都在[-100,+100]之间。
输入-9999时一个多项式结束。
Output
每一组输入对应的输出包括三行,包括2个多项式以及求和后的多项式。每个式子占据一行。(详见样例)
Sample Input
1 3 2 2 -8 0 -9999 1 10 2 3 6 0 -9999 1 17 2 10 -9 5 0 2 23 -1 -1 -3 -9999 -1 17 -3 9 2 6 7 5 3 -1 -9999
Sample Output
A:x^3+2x^2-8 B:x^10+2x^3+6 A+B:x^10+3x^3+2x^2-2 A:x^17+2x^10-9x^5+23x^-1-x^-3 B:-x^17-3x^9+2x^6+7x^5+3x^-1 A+B:2x^10-3x^9+2x^6-2x^5+26x^-1-x^-3
HINT
Source
NBU OJ