ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [๋ฐฑ์ค€(BOJ) 3986๋ฒˆ] ์ข‹์€ ๋‹จ์–ด (C++)
    PS(Problem Solving)/C++ 2022. 1. 20. 23:07
    ๋ฐ˜์‘ํ˜•

    ๋ฌธ์ œ ๋งํฌ

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

     

    ๋ฌธ์ œ ์ •๋ณด

    ์ž…๋ ฅ

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

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

    ์ถœ๋ ฅ

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

     

    ํ’€์ด

     ์Šคํƒ์„ ํ™œ์šฉํ•˜์—ฌ ํ•ด๊ฒฐ ํ•  ์ˆ˜ ์žˆ๋Š” ๋ฌธ์ œ๋‹ค. ์Šคํƒ์ด ๋น„์–ด์žˆ์„ ๊ฒฝ์šฐ์— ์Šคํƒ์„ ์ถ”๊ฐ€ํ•˜๊ณ  ์Šคํƒ์˜ top๊ณผ ๋ฌธ์ž๋ฅผ ๋น„๊ตํ•ด์„œ ๊ฐ™์œผ๋ฉด popํ•˜๊ณ  ๋‹ค๋ฅด๋ฉด push ํ•˜๋Š” ๊ฒƒ์„ ํ†ตํ•ด ์Šคํƒ์ด ๋น„์–ด์žˆ์œผ๋ฉด ์ข‹์€ ๋‹จ์–ด์ด๊ณ , ์Šคํƒ์ด ๋น„์–ด์žˆ์ง€ ์•Š์œผ๋ฉด ์ข‹์€ ๋‹จ์–ด๊ฐ€ ์•„๋‹ˆ๋‹ค.

     

    ์†Œ์Šค ์ฝ”๋“œ

    #include <bits/stdc++.h>
    using namespace std;
    
    int main(void) {
    	ios::sync_with_stdio(0);
    	cin.tie(0);
    	
    	int n;
    	cin >> n;
    	
    	int ans = 0;
    	while (n--) {
    		string str;
    		cin >> str;
    		
    		stack<char> S;
    		
    		for (int i = 0; i < str.length(); i++) {
    			if (S.empty()) {
    				S.push(str[i]);
    			} else {
    				if (S.top() == str[i]) {
    					S.pop();
    				} else {
    					S.push(str[i]);
    				}
    			}
    		}
    		
    		if (S.empty()) {
    			ans++;
    		}
    	}
    	
    	cout << ans;
    	
    	return 0;
    }

     

    ๋ฐ˜์‘ํ˜•
Designed by Tistory.