https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AV14eWb6AAkCFAYD
SW Expert Academy
SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요!
swexpertacademy.com
- vector 사용
#include <iostream>
#include <vector>
#include <algorithm>
#include <cstring>
using namespace std;
int main() {
vector<char>arr1;
vector<char>arr2;
vector<char>arr3;
vector<char>arr4;
int sun = 0;
for (int q = 0; q < 10; q++) {
sun++;
int cnt = 0;
arr1.clear();
arr2.clear();
arr3.clear();
arr4.clear();
int n;
cin >> n;
string st;
cin >> st;
for (int i = 0; i < n; i++) {
char now = st[i];
if (st[i] == '(') arr1.push_back(1);
if (st[i] == '[') arr2.push_back(1);
if (st[i] == '{') arr3.push_back(1);
if (st[i] == '<') arr4.push_back(1);
if (st[i] == ')') {
if (arr1.empty()) {
cnt++;
continue;
}
arr1.pop_back();
}
if (st[i] == ']') {
if (arr2.empty()) {
cnt++;
continue;
}
arr2.pop_back();
}
if (st[i] == '}') {
if (arr3.empty()) {
cnt++;
continue;
}
arr3.pop_back();
}
if (st[i] == '>') {
if (arr4.empty()) {
cnt++;
continue;
}
arr4.pop_back();
}
}
cnt += arr1.size();
cnt += arr2.size();
cnt += arr3.size();
cnt += arr4.size();
int result;
if (cnt == 0) result = 1;
else result = 0;
cout << "#" << sun << " " << result << endl;
}
return 0;
}
'APS > SWEA' 카테고리의 다른 글
1220. [S/W 문제해결 기본] 5일차 - Magnetic C++ (0) | 2021.08.30 |
---|---|
1215. [S/W 문제해결 기본] 3일차 - 회문1 C++ (0) | 2021.08.27 |
1961. 숫자 배열 회전 C++ (0) | 2021.08.27 |
1209. [S/W 문제해결 기본] 2일차 - Sum C++ (0) | 2021.08.26 |
1208. [S/W 문제해결 기본] 1일차 - Flatten C++ (0) | 2021.08.26 |