작성
·
187
0
스택 말고 vector를 이용해서 이렇게 풀었는데 꼭 스택을 사용 해야 하는 건가요??
#include <iostream>
#include <vector>
using namespace std;
int n;
int cnt = 0;
int main() {
cin >> n;
for (int i = 0; i < n; i++) {
string s;
cin >> s;
vector<char> arr;
for (int j = 0; j < s.length(); j++) {
if (arr.empty() || arr.back() != s[j]) {
arr.push_back(s[j]);
}
else {
arr.pop_back();
}
}
if (arr.empty()) cnt++;
}
cout << cnt;
return 0;
}
답변 1
1
안녕하세요 ㅎㅎ
vector로 풀어도 무방합니다.
수강생님 코드 - back()의 경우 시간복잡도도 O(1)이기 때문에 효율성도 좋습니다. ㅎ
또 질문 있으시면 언제든지 질문 부탁드립니다.
좋은 수강평과 별점 5점은 제게 큰 힘이 됩니다. :)
감사합니다.
강사 큰돌 올림.