
소스코드:
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.util.Stack;
public class Main {
static BufferedReader br;
static BufferedWriter bw;
public static void main(String[] args) throws IOException {
br = new BufferedReader(new InputStreamReader(System.in));
bw = new BufferedWriter(new OutputStreamWriter(System.out));
while (true) {
String text = br.readLine();
if (text.equals(".")) {
break;
}
text = text.substring(0, text.length() - 1);
Stack<Character> stack = new Stack<>();
boolean flag = true;
for (char c : text.toCharArray()) {
if ((c == '(') || (c == '[')) {
stack.push(c);
} else if ((c == ')') || (c == ']')) {
if (stack.isEmpty() ||
(c == ')') && (stack.pop() != '(') ||
(c == ']') && (stack.pop() != '[')) {
flag = false;
break;
}
}
}
bw.write(((flag && stack.isEmpty()) ? "yes" : "no") + "\n");
}
br.close();
bw.flush();
bw.close();
}
}
글의 내용 중 잘못된 점이나 수정이 필요한 부분, 혹은 궁금한 사항이 있다면 언제든 댓글로 남겨주시면 감사하겠습니다.
여러분의 피드백은 더 나은 글을 작성하는 데 큰 도움이 됩니다. 감사합니다.
'알고리즘 > 백준' 카테고리의 다른 글
| [JAVA-자바] 10816번: 숫자 카드 2 (0) | 2025.02.28 |
|---|---|
| [JAVA-자바] 10773번: 제로 (0) | 2025.02.28 |
| [JAVA-자바] 2839번: 설탕 배달 (0) | 2025.02.28 |
| [JAVA-자바] 2164번: 카드2 (0) | 2025.02.28 |
| [JAVA-자바] 1920번: 수 찾기 (0) | 2025.02.27 |