백준 문제풀기/JAVA
[백준 18258 JAVA 자바] 큐 2
냉동피자
2023. 8. 29. 12:28
큐를 구현하는
함수들 6개를 만듭시다
저는 그냥 한개의 코드로 퉁쳤습니다
천천히 하나씩 하면 쉽습니다
코드입니다
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.IOException;
import java.util.StringTokenizer;
import java.util.Deque;
import java.util.LinkedList;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
StringBuilder sb = new StringBuilder();
Deque<Integer> q = new LinkedList<>();
int N = Integer.parseInt(br.readLine());
StringTokenizer command;
while(N-- > 0) {
command = new StringTokenizer(br.readLine(), " "); // 문자열 분리
switch(command.nextToken()) {
case "push":
q.offer(Integer.parseInt(command.nextToken()));
break;
case "pop" :
Integer item = q.poll();
if(item == null) {
sb.append(-1).append('\n');
}else {
sb.append(item).append('\n');
}
break;
case "size":
sb.append(q.size()).append('\n');
break;
case "empty":
if(q.isEmpty()) {
sb.append(1).append('\n');
}else {
sb.append(0).append('\n');
}
break;
case "front":
Integer ite = q.peek();
if(ite == null) {
sb.append(-1).append('\n');
}else {
sb.append(ite).append('\n');
}
break;
case "back":
Integer it = q.peekLast();
if(it == null) {
sb.append(-1).append('\n');
}else {
sb.append(it).append('\n');
}
break;
}
}
System.out.println(sb);
}
}