Notice
Recent Posts
Recent Comments
Link
«   2025/12   »
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30 31
Tags
more
Archives
Today
Total
관리 메뉴

main

[백준-18258번/Java] 큐 2 본문

Algorithm

[백준-18258번/Java] 큐 2

1984 2022. 11. 14. 17:16

* BufferedReader, BufferedWriter 사용해야 시간 초과 안 남.

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

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> queue = new LinkedList<>();

		int N = Integer.parseInt(br.readLine());
		int i = 0;

		for (int j = 0; j < N; j++) {
			String raw_cmd = br.readLine();
			String cmd = raw_cmd.split(" ")[0];
			if (cmd.equals("push")) {
				i = Integer.parseInt(raw_cmd.split(" ")[1]);
				queue.add(i);
			} else if (cmd.equals("pop")) {
				Integer num = queue.poll();
				bw.write(((num == null) ? -1 : num) + "\n");
			} else if (cmd.equals("size")) {
				bw.write(queue.size() + "\n");
			} else if (cmd.equals("empty")) {
				bw.write((queue.isEmpty() ? 1 : 0) + "\n");
			} else if (cmd.equals("front")) {
				bw.write((queue.size() == 0 ? -1 : queue.peek()) + "\n");
			} else if (cmd.equals("back")) {
				bw.write((queue.size() == 0 ? -1 : i) + "\n");
			}
		}

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

}
728x90
Comments