๐Ÿ• Baaaaaarking/0x08๊ฐ• - ์Šคํƒ์˜ ํ™œ์šฉ (์ˆ˜์‹์˜ ๊ด„ํ˜ธ์Œ)

[BOJ S4][C++] 3986๋ฒˆ: ์ข‹์€ ๋‹จ์–ด

์„ ๋‹ฌ 2022. 3. 1. 00:52
๋ฐ˜์‘ํ˜•

https://www.acmicpc.net/problem/3986

 

3986๋ฒˆ: ์ข‹์€ ๋‹จ์–ด

์ด๋ฒˆ ๊ณ„์ ˆํ•™๊ธฐ์— ์‹ฌ๋ฆฌํ•™ ๊ฐœ๋ก ์„ ์ˆ˜๊ฐ• ์ค‘์ธ ํ‰์„์ด๋Š” ์˜ค๋Š˜ ์ž์ •๊นŒ์ง€ ๋ณด๊ณ ์„œ๋ฅผ ์ œ์ถœํ•ด์•ผ ํ•œ๋‹ค. ๋ณด๊ณ ์„œ ์ž‘์„ฑ์ด ๋„ˆ๋ฌด ์ง€๋ฃจํ–ˆ๋˜ ํ‰์„์ด๋Š” ๋…ธํŠธ๋ถ์— ์—Ž๋“œ๋ ค์„œ ๊พธ๋ฒ…๊พธ๋ฒ… ์กธ๋‹ค๊ฐ€ ์ œ์ถœ ๋งˆ๊ฐ 1์‹œ๊ฐ„ ์ „์—

www.acmicpc.net

 

๋ฌธ์ œ

์ด๋ฒˆ ๊ณ„์ ˆํ•™๊ธฐ์— ์‹ฌ๋ฆฌํ•™ ๊ฐœ๋ก ์„ ์ˆ˜๊ฐ• ์ค‘์ธ ํ‰์„์ด๋Š” ์˜ค๋Š˜ ์ž์ •๊นŒ์ง€ ๋ณด๊ณ ์„œ๋ฅผ ์ œ์ถœํ•ด์•ผ ํ•œ๋‹ค. ๋ณด๊ณ ์„œ ์ž‘์„ฑ์ด ๋„ˆ๋ฌด ์ง€๋ฃจํ–ˆ๋˜ ํ‰์„์ด๋Š” ๋…ธํŠธ๋ถ์— ์—Ž๋“œ๋ ค์„œ ๊พธ๋ฒ…๊พธ๋ฒ… ์กธ๋‹ค๊ฐ€ ์ œ์ถœ ๋งˆ๊ฐ 1์‹œ๊ฐ„ ์ „์— ๊นจ๊ณ  ๋ง์•˜๋‹ค. ์•ˆํƒ€๊น๊ฒŒ๋„ ์ž๋Š” ๋™์•ˆ ํ‚ค๋ณด๋“œ๊ฐ€ ์ž˜๋ชป ๋ˆŒ๋ ค์„œ ๋ณด๊ณ ์„œ์˜ ๋ชจ๋“  ๊ธ€์ž๊ฐ€ A์™€ B๋กœ ๋ฐ”๋€Œ์–ด ๋ฒ„๋ ธ๋‹ค! ๊ทธ๋ž˜์„œ ํ‰์„์ด๋Š” ๋ณด๊ณ ์„œ ์ž‘์„ฑ์„ ๋•Œ๋ ค์น˜์šฐ๊ณ  ๋ณด๊ณ ์„œ์—์„œ '์ข‹์€ ๋‹จ์–ด'๋‚˜ ์„ธ๋ณด๊ธฐ๋กœ ๋งˆ์Œ ๋จน์—ˆ๋‹ค.

ํ‰์„์ด๋Š” ๋‹จ์–ด ์œ„๋กœ ์•„์น˜ํ˜• ๊ณก์„ ์„ ๊ทธ์–ด ๊ฐ™์€ ๊ธ€์ž๋ผ๋ฆฌ(A๋Š” A๋ผ๋ฆฌ, B๋Š” B๋ผ๋ฆฌ) ์Œ์„ ์ง“๊ธฐ๋กœ ํ•˜์˜€๋‹ค. ๋งŒ์•ฝ ์„ ๋ผ๋ฆฌ ๊ต์ฐจํ•˜์ง€ ์•Š์œผ๋ฉด์„œ ๊ฐ ๊ธ€์ž๋ฅผ ์ •ํ™•ํžˆ ํ•œ ๊ฐœ์˜ ๋‹ค๋ฅธ ์œ„์น˜์— ์žˆ๋Š” ๊ฐ™์€ ๊ธ€์ž์™€ ์ง ์ง€์„์ˆ˜ ์žˆ๋‹ค๋ฉด, ๊ทธ ๋‹จ์–ด๋Š” '์ข‹์€ ๋‹จ์–ด'์ด๋‹ค. ํ‰์„์ด๊ฐ€ '์ข‹์€ ๋‹จ์–ด' ๊ฐœ์ˆ˜๋ฅผ ์„ธ๋Š” ๊ฒƒ์„ ๋„์™€์ฃผ์ž.

์ž…๋ ฅ

์ฒซ์งธ ์ค„์— ๋‹จ์–ด์˜ ์ˆ˜ N์ด ์ฃผ์–ด์ง„๋‹ค. (1 ≤ N ≤ 100)

๋‹ค์Œ N๊ฐœ ์ค„์—๋Š” A์™€ B๋กœ๋งŒ ์ด๋ฃจ์–ด์ง„ ๋‹จ์–ด๊ฐ€ ํ•œ ์ค„์— ํ•˜๋‚˜์”ฉ ์ฃผ์–ด์ง„๋‹ค. ๋‹จ์–ด์˜ ๊ธธ์ด๋Š” 2์™€ 100,000์‚ฌ์ด์ด๋ฉฐ, ๋ชจ๋“  ๋‹จ์–ด ๊ธธ์ด์˜ ํ•ฉ์€ 1,000,000์„ ๋„˜์ง€ ์•Š๋Š”๋‹ค.

์ถœ๋ ฅ

์ฒซ์งธ ์ค„์— ์ข‹์€ ๋‹จ์–ด์˜ ์ˆ˜๋ฅผ ์ถœ๋ ฅํ•œ๋‹ค.

 

ํ’€์ด

๊ฒฐ๊ตญ ์„ ์„ ๊ทธ์—ˆ์„๋•Œ ๊ฒน์น˜์ง€ ์•Š๋Š”๋‹ค๋Š” ๋ง์€ ์–‘์ชฝ ์Œ์„ ์ด๋ค„์•ผํ•œ๋‹ค๋Š”๋ง

ํ’€์ด๊ฐ€ ๋งŽ์ด ์ƒ๋žต๋˜๊ธด ํ–ˆ์ง€๋งŒ

[๐Ÿ• Baaaaaarking/0x08๊ฐ• - ์Šคํƒ์˜ ํ™œ์šฉ (์ˆ˜์‹์˜ ๊ด„ํ˜ธ์Œ)] - [BOJ S4}[C++) 4949๋ฒˆ: ๊ท ํ˜•์žกํžŒ ์„ธ์ƒ

๋‹ค์Œ๊ณผ ๊ฐ™์€ ๊ด„ํ˜ธ ๋ฌธ์ œ์™€ ๋น„์Šทํ•œ ์œ ํ˜•์ด๋ผ๊ณ  ์ƒ๊ฐํ•˜๋ฉด ์ ‘๊ทผ์ด ์‰ฝ๋‹ค

 

์ฆ‰ ์Šคํƒ์„ ์จ์„œ ๊ผญ๋Œ€๊ธฐ์— ๋‹ค์Œ ์š”์†Œ์™€ ๊ฐ™์€์• ๊ฐ€ ์žˆ์œผ๋ฉด pop

์•„๋‹ˆ๋ผ๋ฉด push 

 

๋งˆ์ง€๋ง‰์— ์Šคํƒ์— ๋‚จ์€๊ฒŒ ์—†๋‹ค๋ฉด ์Œ์ด ์ž˜ ๋งž์•˜๋‹ค๋Š” ๋œป์ด๋ฏ€๋กœ ๊ฐฏ์ˆ˜์— ์นด์šดํŠธ

// Authored by : seondal
// Co-authored by : -

//#include <bits/stdc++.h>
#include <iostream>
#include <stack>

using namespace std;

int main() {
    ios::sync_with_stdio(0);
    cin.tie(0);
   
    int n, ans=0;
    cin >> n;
    while(n--){
        string input;
        cin >> input;
        stack<char> s;
        for(int i=0; i<input.length(); i++){
            if(!s.empty() && s.top()==input[i]) s.pop();
            else s.push(input[i]);
        }
        if(s.empty()) ans++;
    }
    cout << ans;
    return 0;
}

/*
 */
๋ฐ˜์‘ํ˜•