https://www.acmicpc.net/problem/10866

๐ ํ์ด : ArrayDeque
import java.io.*;
import java.util.*;
public class Main {
// ์ ์๋ฅผ ์ ์ฅํ๋ ๋ฑ(Deque)๋ฅผ ๊ตฌํํ ๋ค์, ์
๋ ฅ์ผ๋ก ์ฃผ์ด์ง๋ ๋ช
๋ น์ ์ฒ๋ฆฌํ๋ ํ๋ก๊ทธ๋จ ์์ฑ
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
int N = Integer.parseInt(br.readLine()); // ๋ช
๋ น์ ์ N (1 โค N โค 10,000)
Deque<Integer> deque = new ArrayDeque<>(); // ๋ฑ ์์ฑ (ArrayDeque)
StringBuilder sb = new StringBuilder();
/* ๋ฐ๋ณต๋ฌธ(๋ช
๋ น ์ฒ๋ฆฌ)โจ */
while (N-- > 0) {
String[] command = br.readLine().split(" ");
switch (command[0]) {
case "push_front":
deque.offerFirst(Integer.parseInt(command[1]));
break;
case "push_back":
deque.offerLast(Integer.parseInt(command[1]));
break;
case "pop_front":
sb.append(deque.isEmpty() ? "-1" : deque.pollFirst()).append("\n");
break;
case "pop_back":
sb.append(deque.isEmpty() ? "-1" : deque.pollLast()).append("\n");
break;
case "size":
sb.append(deque.size()).append("\n");
break;
case "empty":
sb.append(deque.isEmpty() ? 1 : 0).append("\n");
break;
case "front":
sb.append(deque.isEmpty() ? "-1" : deque.peekFirst()).append("\n");
break;
case "back":
sb.append(deque.isEmpty() ? "-1" : deque.peekLast()).append("\n");
break;
} // switch
} // while
System.out.println(sb);
}
}
'๐ท์๊ณ ๋ฆฌ์ฆ ๋ฌธ์ ํ์ด > ๋ฐฑ์ค' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
| [๋ฐฑ์ค/Java] 1929 ์์ ๊ตฌํ๊ธฐ(์๋ผํ ์คํ ๋ค์ค์ ์ฒด) (0) | 2024.10.06 |
|---|---|
| [๋ฐฑ์ค/Java] 18110 solved.ac (0) | 2024.10.06 |
| [๋ฐฑ์ค/Java] 10845 ํ (0) | 2024.10.06 |
| [๋ฐฑ์ค/Java] 10816 ์ซ์ ์นด๋ 2 (0) | 2024.10.06 |
https://www.acmicpc.net/problem/10866

๐ ํ์ด : ArrayDeque
import java.io.*; import java.util.*; public class Main { // ์ ์๋ฅผ ์ ์ฅํ๋ ๋ฑ(Deque)๋ฅผ ๊ตฌํํ ๋ค์, ์
๋ ฅ์ผ๋ก ์ฃผ์ด์ง๋ ๋ช
๋ น์ ์ฒ๋ฆฌํ๋ ํ๋ก๊ทธ๋จ ์์ฑ public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); int N = Integer.parseInt(br.readLine()); // ๋ช
๋ น์ ์ N (1 โค N โค 10,000) Deque<Integer> deque = new ArrayDeque<>(); // ๋ฑ ์์ฑ (ArrayDeque) StringBuilder sb = new StringBuilder(); /* ๋ฐ๋ณต๋ฌธ(๋ช
๋ น ์ฒ๋ฆฌ)โจ */ while (N-- > 0) { String[] command = br.readLine().split(" "); switch (command[0]) { case "push_front": deque.offerFirst(Integer.parseInt(command[1])); break; case "push_back": deque.offerLast(Integer.parseInt(command[1])); break; case "pop_front": sb.append(deque.isEmpty() ? "-1" : deque.pollFirst()).append("\n"); break; case "pop_back": sb.append(deque.isEmpty() ? "-1" : deque.pollLast()).append("\n"); break; case "size": sb.append(deque.size()).append("\n"); break; case "empty": sb.append(deque.isEmpty() ? 1 : 0).append("\n"); break; case "front": sb.append(deque.isEmpty() ? "-1" : deque.peekFirst()).append("\n"); break; case "back": sb.append(deque.isEmpty() ? "-1" : deque.peekLast()).append("\n"); break; } // switch } // while System.out.println(sb); } }
'๐ท์๊ณ ๋ฆฌ์ฆ ๋ฌธ์ ํ์ด > ๋ฐฑ์ค' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
| [๋ฐฑ์ค/Java] 1929 ์์ ๊ตฌํ๊ธฐ(์๋ผํ ์คํ ๋ค์ค์ ์ฒด) (0) | 2024.10.06 |
|---|---|
| [๋ฐฑ์ค/Java] 18110 solved.ac (0) | 2024.10.06 |
| [๋ฐฑ์ค/Java] 10845 ํ (0) | 2024.10.06 |
| [๋ฐฑ์ค/Java] 10816 ์ซ์ ์นด๋ 2 (0) | 2024.10.06 |