큐 2

문제 풀러가기

18258

코드

import java.util.*;
import java.io.*;

public class Main {
  public static void main(String[] args) throws IOException {
    BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
    BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));

    Queue<Integer> que = new LinkedList<>();

    int n = Integer.parseInt(br.readLine());
    int num = 0;

    for(int i = 0; i < n; i++) {
      String s = br.readLine();
      String[] arr = new String[2];
      arr = s.split(" ");

      if(arr[0].equals("push")) {
        num = Integer.parseInt(arr[1]);
        que.add(num);
      } else if(arr[0].equals("pop")) {
        bw.write(que.isEmpty() ? "-1" : que.poll() + "");
        bw.newLine();
      } else if(arr[0].equals("size")) {
        bw.write(que.size() + "");
        bw.newLine();
      } else if(arr[0].equals("empty")) {
        bw.write(que.isEmpty() ? "1" : "0");
        bw.newLine();
      } else if(arr[0].equals("front")) {
        bw.write(que.isEmpty() ? "-1" : que.peek() + "");
        bw.newLine();
      } else if(arr[0].equals("back")) {
        bw.write(que.isEmpty() ? "-1" : num + "");
        bw.newLine();
      }
    }

    br.close();
    bw.flush();
    bw.close();
    }
  }
}

설명

범위만 다르고 큐 문제와 같은 문제이다.