Advertisement
Guest User

Java Advanced-LinearDataStruct-MaximumElement

a guest
May 21st, 2018
283
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 1.51 KB | None | 0 0
  1. import java.io.BufferedReader;
  2. import java.io.IOException;
  3. import java.io.InputStreamReader;
  4. import java.util.ArrayDeque;
  5. import java.util.Deque;
  6. import java.util.Scanner;
  7. import java.util.Stack;
  8.  
  9. public class Main {
  10.     public static void main(String[] args) throws IOException {
  11.         BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
  12.  
  13.         int commandsNum = Integer.parseInt(reader.readLine());
  14.  
  15.         Deque<Integer> stack = new ArrayDeque<>(), maxStack = new ArrayDeque<>();
  16.  
  17.         StringBuilder sb = new StringBuilder();
  18.  
  19.         int maxNumber = 0;
  20.  
  21.         for (int i = 0; i < commandsNum; i++) {
  22.             String[] input = reader.readLine().split(" ");
  23.  
  24.             int command = Integer.parseInt(input[0]);
  25.             if (command == 1) {
  26.                 int value = Integer.valueOf(input[1]);
  27.                 if (maxNumber <= value) {
  28.                     maxNumber = value;
  29.                     maxStack.push(maxNumber);
  30.                 }
  31.                 stack.push(value);
  32.             } else if (command == 2) {
  33.                 if (stack.pop() == maxNumber) {
  34.                     maxStack.pop();
  35.                     if (maxStack.size() > 0) {
  36.                         maxNumber = maxStack.peek();
  37.                     } else {
  38.                         maxNumber = 0;
  39.                     }
  40.                 }
  41.             } else {
  42.                 sb.append(maxNumber).append(System.lineSeparator());
  43.             }
  44.         }
  45.         System.out.println(sb);
  46.     }
  47. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement