1. 程式人生 > >中國大學MOOC 零基礎學Java語言 ——多項式加法(5分) 4分答案(想哭)

中國大學MOOC 零基礎學Java語言 ——多項式加法(5分) 4分答案(想哭)

import java.util.Scanner;

public class Main {

	public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        int x =in.nextInt();
        int a =x;
        int y ;
        int[] data = new int[x+1];
        data[x]=in.nextInt();
        if(x>0) {
        do {
        	x = in.nextInt();
        	y = in.nextInt();
        	data[x]=y;
        }while(x!=0);      
        }
        int x1 =in.nextInt();
        int b=x1;
        int y1 ;
        int[] data1 = new int[x1+1];
        data1[x1]=in.nextInt();
        if(x1>0) {
        do {
        	x1 = in.nextInt();
        	y1 = in.nextInt();
        	data1[x1]=y1;
        }while(x1!=0); 
        }
        if(a>=b) {
        	for(int i =a;i>b;i--) {
        		if(data[i]!=0) {
        			if(data[i]!=1) {
        		System.out.print(data[i]+"x"+i+"+");
        		}
        			else {
        				System.out.print("x"+i+"+");
        			}
        		}
        		}
        	for(int i =b;i>1;i--) {
        		if((data[i]+data1[i])!=0) {
        			System.out.print((data[i]+data1[i])+"x"+i+"+");
        		}
        	}
        	if(b>0) {
        	if((data[1]+data1[1])!=0) {
        		if((data[1]+data1[1])!=1) {
      			System.out.print((data[1]+data1[1])+"x"+"+");
        		}
        		else {
        			System.out.print("x"+"+");
        		}
       		}
        	}
        	
        	System.out.print((data[0]+data1[0]));
        	
        }
        else
        {
        	for(int i =b;i>a;i--) {
        		if(data1[i]!=0) {
        			if((data1[i])!=1) {
        		System.out.print(data1[i]+"x"+i+"+");
        			}
        			else {
        				System.out.print("x"+i+"+");
        			}
        		}
        		}
        	for(int i =a;i>1;i--) {
        		if((data[i]+data1[i])!=0) {
        			if((data[i]+data1[i])!=1) {
        			System.out.print((data[i]+data1[i])+"x"+i+"+");
        			}
        			else {
        				System.out.print("x"+i+"+");
        			}
        		}
        	}
        	if(a>0) {
        	if(((data[1]+data1[1])!=0)) {
      			System.out.print((data[1]+data1[1])+"x"+"+");
       		}
        	}
        	System.out.print((data[0]+data1[0]));
        }
	}
	
}