https://www.acmicpc.net/problem/5430
5430번: AC
각 테스트 케이스에 대해서, 입력으로 주어진 정수 배열에 함수를 수행한 결과를 출력한다. 만약, 에러가 발생한 경우에는 error를 출력한다.
www.acmicpc.net
Java 코드
import java.util.Scanner;
import java.util.Deque;
import java.util.LinkedList;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
StringBuilder sb = new StringBuilder();
int t = sc.nextInt();
for(int i = 0; i < t; i++) {
Deque<String> q = new LinkedList<>();
boolean err = false;
boolean rev = false;
char[] c = sc.next().toCharArray();
int n = sc.nextInt();
String str = sc.next();
str = str.substring(1, str.length() - 1);
String[] s = str.split(",");
for(int j = 0; j < n; j++) q.add(s[j]);
for(int j = 0; j < c.length; j++) {
if(c[j] == 'R') rev = !rev;
else {
if(!q.isEmpty()) {
if(rev == false) q.pollFirst();
else q.pollLast();
}
else err = true;
}
}
if(err == true) sb.append("error").append("\n");
else {
sb.append("[");
if(rev == false) {
while(q.size() > 1) sb.append(q.pollFirst()).append(",");
}
else {
while(q.size() > 1) sb.append(q.pollLast()).append(",");
}
if(q.size() == 0) sb.append("]").append("\n");
else sb.append(q.poll()).append("]").append("\n");
}
}
System.out.println(sb);
}
}
'백준' 카테고리의 다른 글
백준 1717 집합의 표현(Java) (0) | 2023.02.27 |
---|---|
백준 2467 용액(Java) (0) | 2023.02.27 |
백준 14503 로봇 청소기(Java) (0) | 2023.02.27 |
백준 2293 동전 1(Java) (0) | 2023.02.27 |
백준 15686 치킨 배달(Java) (0) | 2023.02.26 |