728x90
문제
https://www.acmicpc.net/problem/28279
풀이
문제에서 주어진 조건대로 덱의 기능들을 구현하면 되는 문제다.
스위치문을 사용해서 조건별로 기능들을 구현했다.
Deque<String> deque = new ArrayDeque<>();
while (N-- > 0) {
st = new StringTokenizer(br.readLine());
// Solve
switch (Integer.parseInt(st.nextToken())) {
case 1:
deque.addFirst(st.nextToken());
break;
case 2:
deque.addLast(st.nextToken());
break;
case 3:
sb.append(deque.isEmpty() ? "-1" : deque.removeFirst()).append("\\n");
break;
case 4:
sb.append(deque.isEmpty() ? "-1" : deque.removeLast()).append("\\n");
break;
case 5:
sb.append(deque.size()).append("\\n");
break;
case 6:
sb.append(deque.isEmpty() ? "1\\n" : "0\\n");
break;
case 7:
sb.append(deque.isEmpty() ? "-1" : deque.peek()).append("\\n");
break;
case 8:
sb.append(deque.isEmpty() ? "-1" : deque.peekLast()).append("\\n");
break;
}
}
명령의 수는 최대 1e6개 이므로 StringBuilder에 담아서 한 번에 출력했다.
소스코드
https://github.com/rogi-rogi/problem-solving/blob/main/baekjoon-online-judge/easy/28279.java
728x90
'PS > Baekjoon Online Judge' 카테고리의 다른 글
[백준 13022] 늑대와 올바른 단어 [Java] (0) | 2025.03.26 |
---|---|
[백준 27370] 친구와 배달하기 [Java] (0) | 2025.03.26 |
[백준 32344] 유물 발굴 [Java] (0) | 2025.03.22 |
[백준 31067] 다오의 경주 대회 [Java] (0) | 2025.03.21 |
[백준 02139] 나는 너가 살아온 날을 알고 있다 [Java] (0) | 2025.03.21 |