ZZULIOJ 1124: 两个有序数组合并,Java

1124: 两个有序数组合并

import java.io.OutputStreamWriter;
import java.io.PrintWriter;
import java.util.Scanner;
public class Main {
    
    
    public static void main(String[] args){
    
    
        PrintWriter out = new PrintWriter(new OutputStreamWriter(System.out));
        Scanner cin = new Scanner(System.in);
        int m=cin.nextInt();
        int []a = new int[m+1];
        for(int i=m;i>=1;i--) a[i]=cin.nextInt();
        int n=cin.nextInt();
        int []b = new int[n+1];
        for(int i=1;i<=n;i++) b[i]=cin.nextInt();
        int []c = new int[m+n+1];
        int s=1,t=1,k=1;
        while(s<=m&&t<=n)
        {
    
    
            if(a[s]>=b[t]) c[k++]=a[s++];
            else c[k++]=b[t++];
        }
        while(s<=m) c[k++]=a[s++];
        while(t<=n) c[k++]=b[t++];
        for(k=1;k<=m+n-1;k++)
            out.printf("%d ",c[k]);
        out.println(c[m+n]);
        out.flush();
    }
}

猜你喜欢

转载自blog.csdn.net/qq_52792570/article/details/121257097