From 1bbb51f767d5778f8f14e771e82125d6a7aaea7f Mon Sep 17 00:00:00 2001 From: Park Semin Date: Sat, 29 Mar 2025 12:32:40 +0900 Subject: [PATCH 1/2] [ADD] baekjoon 10866 java solution --- solutions/baekjoon/10866/Main.java | 99 ++++++++++++++++++++++++++++++ 1 file changed, 99 insertions(+) create mode 100644 solutions/baekjoon/10866/Main.java diff --git a/solutions/baekjoon/10866/Main.java b/solutions/baekjoon/10866/Main.java new file mode 100644 index 0000000..e372a41 --- /dev/null +++ b/solutions/baekjoon/10866/Main.java @@ -0,0 +1,99 @@ +// Authored by : semInDev +// Co-authored by : - +// Link : https://www.acmicpc.net/problem/10866 + +import java.util.*; +import java.io.*; + +public class Main { + + public static void main(String[] args)throws IOException{ + FastReader input = new FastReader(); + StringBuilder sb = new StringBuilder(); + + int N = input.nextInt(); + ArrayDeque deque = new ArrayDeque<>(); + while(N-->0) { + String cmd = input.next(); + switch(cmd) { + case "push_front": + deque.addFirst(input.nextInt()); + break; + + case "push_back": + deque.addLast(input.nextInt()); + break; + + case "pop_front": + if(deque.isEmpty()) sb.append(-1+"\n"); + else sb.append(deque.pollFirst()+"\n"); + break; + + case "pop_back": + if(deque.isEmpty()) sb.append(-1+"\n"); + else sb.append(deque.pollLast()+"\n"); + break; + + case "size": + sb.append(deque.size()+"\n"); + break; + + case "empty": + if(deque.isEmpty()) sb.append(1+"\n"); + else sb.append(0+"\n"); + break; + + case "front": + if(deque.isEmpty()) sb.append(-1+"\n"); + else sb.append(deque.peekFirst()+"\n"); + break; + + case "back": + if(deque.isEmpty()) sb.append(-1+"\n"); + else sb.append(deque.peekLast()+"\n"); + } + } + System.out.print(sb); + } + + static class FastReader { + BufferedReader br; + StringTokenizer st; + + public FastReader() throws IOException{ + br = new BufferedReader(new InputStreamReader(System.in)); //백준 제출 시 주석해제를 하면 됩니다. + // br = new BufferedReader(new FileReader("input.txt")); //IDE 실행 시 주석해제를 하면 됩니다. + } + + String next() { + while(st == null || !st.hasMoreElements()) { + try { + st = new StringTokenizer(br.readLine()); + } + catch (IOException e) { + e.printStackTrace(); + } + } + return st.nextToken(); + } + + int nextInt() { return Integer.parseInt(next()); } + long nextLong() { return Long.parseLong(next()); } + String nextLine() { + String str = ""; + try { + str = br.readLine(); + } + catch (IOException e) { + e.printStackTrace(); + } + return str; + } + } +} + +/* Solution Description + + - java 컬렉션 프레임워크의 ArrayDeque을 사용하여 덱을 풀 수 있다. + + */ \ No newline at end of file From 35f4cf5d120fb0c1019168847f8704e922f8d386 Mon Sep 17 00:00:00 2001 From: sem_in_github Date: Sat, 19 Apr 2025 16:39:23 +0900 Subject: [PATCH 2/2] Update baekjoon 10866 java solution --- solutions/baekjoon/10866/Main.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/solutions/baekjoon/10866/Main.java b/solutions/baekjoon/10866/Main.java index e372a41..77b223f 100644 --- a/solutions/baekjoon/10866/Main.java +++ b/solutions/baekjoon/10866/Main.java @@ -1,6 +1,6 @@ // Authored by : semInDev // Co-authored by : - -// Link : https://www.acmicpc.net/problem/10866 +// Link : http://boj.kr/314b43a8c0d74c79bdb72107034d68c5 import java.util.*; import java.io.*; @@ -96,4 +96,4 @@ String nextLine() { - java 컬렉션 프레임워크의 ArrayDeque을 사용하여 덱을 풀 수 있다. - */ \ No newline at end of file + */