티스토리 뷰
문제
코드
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.util.Stack;
public class Main {
public static void main(String[] args) throws Exception {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
int n = Integer.parseInt(br.readLine());
Stack s = new Stack<>();
StringBuilder sb = new StringBuilder();
for (int i = 0; i < n; i++) {
String[] input = br.readLine().split("");
for (int j = 0; j < input.length; j++) {
if (input[j].equals("(")) {
// 왼쪽 괄호일 경우 push
s.push(input[j]);
} else if (input[j].equals(")")) {
// 오른쪽 괄호일 경우
if (!s.isEmpty()) {
if (s.lastElement().equals("(")) {
// 스택이 비어있지 않고
// 이전 문자열이 왼쪽괄호가 존재하는 경우 pop
s.pop();
}
} else {
// 스택이 비어있다면 push
s.push(input[j]);
}
}
}
if (s.isEmpty()) {
// 스택 내용이 존재하지 않을 경우(모두 괄호가 매칭 된 경우)
sb.append("YES\n");
} else {
// 스택 내용이 존재할 경우(괄호가 매칭되지 않은 경우)
sb.append("NO\n");
}
s.clear();
}
System.out.print(sb);
}
}
출처
'알고리즘 > 백준알고리즘(JAVA)' 카테고리의 다른 글
| #1158번 : 조세퍼스 문제 (0) | 2018.09.25 |
|---|---|
| #1406번 : 에디터 (0) | 2018.09.19 |
| #10827번 : a^b (0) | 2018.09.16 |
| #10757번 : 큰 수 A+B (0) | 2018.09.16 |
| #10826번 : 피보나치 수 4 (0) | 2018.09.16 |
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
TAG
- 피보나치 수 4
- 1158
- OpenCV
- algorithm
- GCD 합
- 자동타입
- mssql
- javacv
- #kotlin
- 최대공약수와 최소공배수
- 영상처리
- 큰 수 A+B
- algorihtm
- 함수형사고 Kotlin Java
- #android #motionlayout
- 1260
- 문자열
- 2743
- kotlin
- 10826
- 단어 길이 재기
- 알고리즘
- 10757
- a^b
- 조세퍼스 문제
- 10827
- 1237
- constraintlayout
- Eclipse
- 10828
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | 5 | 6 | 7 |
| 8 | 9 | 10 | 11 | 12 | 13 | 14 |
| 15 | 16 | 17 | 18 | 19 | 20 | 21 |
| 22 | 23 | 24 | 25 | 26 | 27 | 28 |
| 29 | 30 | 31 |
글 보관함