import java.util.Scanner;
public class Main {
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner scanner=new Scanner(System.in);
int n=scanner.nextInt();
int a[]=new int[n+1];
for (int i = 0; i < a.length; i++) {
a[i]=scanner.nextInt();
}
if(a[0]<0)System.out.print("-");
for (int i = 0; i < a.length; i++) {
if(a[i]==0) {
if(i==a.length-1) {
}else {
if(a[i+1]>0) {
System.out.print("+");
}else if(a[i+1]<0) {
System.out.print("-");
}
}
continue;
}
if(a[i]==1||a[i]==-1) {
if(i==a.length-1) {
System.out.print("1");
}
}else {
System.out.print((int)Math.abs(a[i]));
}
if(i==a.length-1) {
}else {
if(n-i==1) {
System.out.print("x");
}else {
System.out.print("x^");
System.out.print(n-i);
}
}
if(i==a.length-1) {
continue;
}else {
if(a[i+1]>0) {
System.out.print("+");
}else if(a[i+1]<0) {
System.out.print("-");
}
}
}
}
}
这题我就是纯模拟,把每一种情况都要考虑进去,首先要考虑第一项的符号,这个最好是在循环开始前进行,然后要把每一项拆成符号+系数绝对值+x+指数的形式,每个部分都需要判断各种情况。然后就是要注意当使用a[i+1]时,一定要判断是否是最后一项



京公网安备 11010502036488号