[백준] 10845 큐 - Java
큐를 활용해도 되고, 큐를 구체화한 덱을 활용해도 된다.
큐에 대해 알고 있다면 그냥 하라는대로 구현만 하면 되는 문제이다.
import java.util.*;
public class Main {
public static void main(String[] args) throws Exception {
Scanner sc = new Scanner(System.in);
StringBuilder sb = new StringBuilder();
int cycle = sc.nextInt();
sc.nextLine();
Deque<Integer> q = new LinkedList<Integer>();
for(int i=0; i<cycle; i++) {
String[] arr = sc.nextLine().split(" ");
if(arr[0].equals("push")) {
q.offerLast(Integer.parseInt(arr[1]));
}else if(arr[0].equals("front")) {
if(q.isEmpty()) {
sb.append(-1).append("\n");
}else {
sb.append(q.peekFirst()).append("\n");
}
}else if(arr[0].equals("back")) {
if(q.isEmpty()) {sb.append(-1).append("\n");}else {
sb.append(q.peekLast()).append("\n");}
}else if(arr[0].equals("empty")) {
if(q.isEmpty()) {
sb.append(1).append("\n");
}else {
sb.append(0).append("\n");
}
}else if(arr[0].equals("size")) {
sb.append(q.size()).append("\n");
}else if(arr[0].equals("pop")) {
if(q.isEmpty()) {
sb.append(-1).append("\n");
}else {
sb.append(q.pollFirst()).append("\n");
}
}
}
System.out.print(sb);
}
}
반응형
'Algorithm > Baekjoon' 카테고리의 다른 글
[백준] 6549 히스토그램에서 가장 큰 직사각형 - Java (0) | 2021.11.14 |
---|---|
[백준] 23056 참가자 명단 - Java (0) | 2021.10.31 |
[백준] 2702 초6수학 - Java (0) | 2021.10.29 |
[백준] 1159 농구 경기 - Java (0) | 2021.10.29 |
[백준] 1100 하얀 칸 - Java (0) | 2021.10.29 |
댓글
이 글 공유하기
다른 글
-
[백준] 6549 히스토그램에서 가장 큰 직사각형 - Java
[백준] 6549 히스토그램에서 가장 큰 직사각형 - Java
2021.11.14 -
[백준] 23056 참가자 명단 - Java
[백준] 23056 참가자 명단 - Java
2021.10.31 -
[백준] 2702 초6수학 - Java
[백준] 2702 초6수학 - Java
2021.10.29 -
[백준] 1159 농구 경기 - Java
[백준] 1159 농구 경기 - Java
2021.10.29