#P2281. [HNOI2003] 多项式的加法和乘法
[HNOI2003] 多项式的加法和乘法
题目描述
今天的数学课上,老师讲了多项式的加法和乘法。然后布置了很多计算题,小明不想花太多时间来做数学作业,于是想编写一个程序来完成这个任务。
比如计算下面两个多项式的和与积:
假定所有变量都是单个大写字符,所有的系数和指数都是常数,且都是整数。
我们用 X^3
表示 的三次方,在系数和不同的项之间用空格分隔,例如 X Y^2
中, 和 之间有空格。下面是两个多项式的例子,除此之外没有别的空格。
X Y^2 Z + 31 W X^3 Y^3 Z^50 + S^3
V^2 + S^3 + 3 W X^3 Y^3
现在,按照上面的格式给定两个多项式,请你求出这两个多项式的和与积。
输入格式
输入包括两行,每一行是一个多项式。每个多项式不超过 个字符。计算过程中保证任何中间结果系数和指数均不超过长整数范围。
输出格式
输出也是两行,第一行是两个多项式的和,第二行是两个多项式的积。输出中要求合并同类项。输出多项式的格式和输入的格式类似,但输出时请把所有空格都去掉,并保证每一项都是 ASCII 码排在前面的变量放在前面,即输出 X^3Y^2
而不是 Y^2X^3
。另外,输出的项请按变量 A
的指数从小到大排列,变量 A
指数相同的,按变量 B
的指数从小到大排列,依此类推。并注意输出要符合我们平常书写的习惯。
A + B
3 A + 4 A B^3 + C
C+B+4A+4AB^3
BC+AC+3AB+4AB^4+3A^2+4A^2B^3