编程题:4208 多项式表示
给定一个多项式,其幂从8到0,要求删除多项式中没用的字符,使之变成可读格式。例如,给定的系数为0、0、0、1、22、-333、0、1和-1,你应该输出:x^5+22x^4-333x^3+x-1。
转换多项式时需要遵守以下规则:
(1)按幂的次数递减顺序。
(2)指数用“^”来表示。
(3)常数项仅用常数来表示。
(4)只有非0系数项才表示。如果所有项的系数全为0,才会输出常数项0。
(5)只有在“+”和“-”操作符的左右两边才会各有一个空格。
(6)第1项系数为正,则不需要正号;如果第1项的系数为负数,则要有“-”符号,如:-7x^2+30x+66。
(7)除了第1项外,系数为负数的项前的负号应该表示为减,也就是说,不能输出“x^2 + - 3x”,而应输出“x^2-3x”。
(8)常数1和-1只能出现在常数项,也就是说,不能输出“-1x^3+1x^2+3x^1”,而应该输出“-x^3+x^2+3x-1”。
### 输入格式:
输入文件中包含若干个测试数据,每个测试数据占一行,为多项式的9个系数,用空格隔开,每个系数的绝对值不超过1000。
### 输出格式:
对输入文件每个测试数据所给出的9个系数,输出一行,为对应的多项式。
### 输入样例:
in
0 0 0 1 22 -333 0 1 -1
0 0 0 0 0 0 -55 5 0
### 输出样例:
out
x^5 + 22x^4 - 333x^3 + x - 1
-55x^2 + 5x
答案:若无答案欢迎评论
转换多项式时需要遵守以下规则:
(1)按幂的次数递减顺序。
(2)指数用“^”来表示。
(3)常数项仅用常数来表示。
(4)只有非0系数项才表示。如果所有项的系数全为0,才会输出常数项0。
(5)只有在“+”和“-”操作符的左右两边才会各有一个空格。
(6)第1项系数为正,则不需要正号;如果第1项的系数为负数,则要有“-”符号,如:-7x^2+30x+66。
(7)除了第1项外,系数为负数的项前的负号应该表示为减,也就是说,不能输出“x^2 + - 3x”,而应输出“x^2-3x”。
(8)常数1和-1只能出现在常数项,也就是说,不能输出“-1x^3+1x^2+3x^1”,而应该输出“-x^3+x^2+3x-1”。
### 输入格式:
输入文件中包含若干个测试数据,每个测试数据占一行,为多项式的9个系数,用空格隔开,每个系数的绝对值不超过1000。
### 输出格式:
对输入文件每个测试数据所给出的9个系数,输出一行,为对应的多项式。
### 输入样例:
in
0 0 0 1 22 -333 0 1 -1
0 0 0 0 0 0 -55 5 0
### 输出样例:
out
x^5 + 22x^4 - 333x^3 + x - 1
-55x^2 + 5x
答案:若无答案欢迎评论