티스토리 뷰
728x90
옛날에 계산기 구현할 때 괄호랑 연산자 처리할 때 스택을 썼던거 같았는데 기억이 잘 안나서,,
나는 다음과 같은 규칙을 이용하여 풀었다.
1. '('의 개수가 항상 더 많거나 같아야한다.
2. 최종적으로 '('와 ')'의 개수가 같아야한다.
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
StringBuilder sb = new StringBuilder();
int T = Integer.parseInt(br.readLine());
for (int i = 0; i < T; i++) {
boolean isVPS = true;
int left = 0;
int right = 0;
String str = br.readLine();
for (int j = 0; j < str.length(); j++) {
if (str.charAt(j) == '(')
left++;
else
right++;
if (left < right) {
isVPS = false;
break;
}
}
if (isVPS && left == right)
sb.append("YES\n");
else
sb.append("NO\n");
}
System.out.println(sb);
}
}
Java 문자열 한 문자씩 자르기
String 클래스의 split() 메소드
String str = "Lisa";
String[] strArray = str.split("");
for (String s : strArray) {
System.out.println(s);
}
String 클래스의 chartAt() 메소드
String str = "Lisa";
for (int i = 0; i < str.length(); i++) {
System.out.println(str.charAt(i));
}
참고 : JAVA 문자열 한글자씩 자르기 split, charAt 예제 (tistory.com)
스택 이용해서 풀기!!
참고 : [백준] 9012번 : 괄호 - JAVA [자바] (tistory.com)
728x90
'Algorithm' 카테고리의 다른 글
프로그래머스 - 신규 아이디 추천 (Python) (0) | 2021.10.22 |
---|---|
백준(BOJ) - 9093 : 단어 뒤집기 (Java) (0) | 2021.10.20 |
프로그래머스 - 우유와 요거트가 담긴 장바구니 (MySQL) (0) | 2021.10.16 |
프로그래머스 - 멀쩡한 사각형 (Python) (0) | 2021.10.16 |
프로그래머스 - 로또의 최고 순위와 최저 순위 (Python) (2) | 2021.10.16 |
댓글
공지사항
최근에 올라온 글