인프런 커뮤니티 질문&답변

kkim360님의 프로필 이미지
kkim360

작성한 질문수

10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트

1-M

1-m 3986 좋은단어 질문

해결된 질문

작성

·

122

0

http://boj.kr/b08f18a0dc7741f59a7216d6b9f8b52f

선생님 제가 코드를 짜보았는데 선생님 코드와 크게 다를바가 없어보이는데 무엇이 문제인지 찾지를 못했습니다. 도와주시면 감사하겠습니다!

답변 1

0

큰돌님의 프로필 이미지
큰돌
지식공유자

안녕하세요 ㅎㅎ

매케이스마다 새롭게 stack을 정의해주시는 부분이 없어서 그렇습니다. ㅎㅎ

이렇게 해보시겠어요?

그리고 size == 0보다는 empty가 더 좋습니다.

#include <bits/stdc++.h>
using namespace std;

int main() {
    ios_base::sync_with_stdio(false);
    cin.tie(NULL);

    int n, cnt = 0;
    cin >> n;

    for (int i = 0; i < n; i++) {
        string s;
        cin >> s;
        stack<char> _stack;

        for (char c : s) {
            if (_stack.empty() || _stack.top() != c) {
                _stack.push(c);
            } else {
                _stack.pop();
            }
        }

        if (_stack.empty()) {
            cnt++;
        }
    }

    cout << cnt;
    return 0;
}

 

또 질문 있으시면 언제든지 질문 부탁드립니다.

좋은 수강평과 별점 5점은 제게 큰 힘이 됩니다. :)

감사합니다.

강사 큰돌 올림.


kkim360님의 프로필 이미지
kkim360

작성한 질문수

질문하기