이번 문제는 실버 4 난이도의 9012번 괄호 문제이다.

문제의 접근법부터 생각해보자.
문자열에서 ()을 찾아서 발견하면 ()을 문자열에서 삭제하고 다시 ()이 모두 사라질 때까지 탐색한 후 문자열의 크기가 0이라면 YES, 아니라면, NO를 출력하면 되는 문제이다.
아래는 작성한 코드이다.
#include <bits/stdc++.h>
using namespace std;
int main (void){
ios::sync_with_stdio(0); cin.tie(0);
int T;
cin >> T;
for (int i = 0; i < T; i++){
string temp;
cin >> temp;
while (temp.find("()") != string::npos) {
temp.erase(temp.find("()"), 2);
}
if (temp.size() == 0) cout << "YES" << '\n';
else cout << "NO" << '\n';
}
}'매일 BOJ' 카테고리의 다른 글
| (매일 BOJ) C++ 18110번 solved.ac (0) | 2025.07.12 |
|---|---|
| (매일 BOJ) C++ 14626번 ISBN (1) | 2025.07.12 |
| (매일 BOJ) C++ 11866번 요세푸스 문제 0 (0) | 2025.07.11 |
| (매일 BOJ) C++ 7568번 덩치 (2) | 2025.07.11 |
| (매일 BOJ) C++ 10828번 스택 (5) | 2025.07.10 |