import java.util.Scanner; import java.util.Stack; /** * @author supermejane * @date 2025/10/1 * @description */ public class Main { private static Stack<Integer> stack = new Stack<>(); // 注意类名必须为 Main, 不要有任何 package xxx 信息 public static void main(String[] args) { Scanner in = new Scanner(System.in); int[] a = new int[1000000]; // 注意 hasNext 和 hasNextLine 的区别 int cnt = in.nextInt(); for (int i = 0; i < cnt; i++) { a[i] = in.nextInt(); } int max = Integer.MIN_VALUE; int[] maxArr = new int[cnt]; for (int i = cnt - 1; i >= 0; i--) { if (a[i] > max) max = a[i]; maxArr[i] = max; } boolean flag = false; for (int i = 0; i < cnt; i++) { if (a[i] < maxArr[i]) stack.push(a[i]); else { if (!flag) { System.out.print(a[i]); flag = true; } else { System.out.print(" " + a[i]); } } } while (!stack.isEmpty()) { if (!flag) { System.out.print(stack.pop()); flag = true; } else { System.out.print(" " + stack.pop()); } } } }