๋ณธ๋ฌธ์œผ๋กœ ๋ฐ”๋กœ๊ฐ€๊ธฐ
728x90
๐Ÿ”—๋ฌธ์ œ ๋ณด๋Ÿฌ๊ฐ€๊ธฐ
 

ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค

์ฝ”๋“œ ์ค‘์‹ฌ์˜ ๊ฐœ๋ฐœ์ž ์ฑ„์šฉ. ์Šคํƒ ๊ธฐ๋ฐ˜์˜ ํฌ์ง€์…˜ ๋งค์นญ. ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค์˜ ๊ฐœ๋ฐœ์ž ๋งž์ถคํ˜• ํ”„๋กœํ•„์„ ๋“ฑ๋กํ•˜๊ณ , ๋‚˜์™€ ๊ธฐ์ˆ  ๊ถํ•ฉ์ด ์ž˜ ๋งž๋Š” ๊ธฐ์—…๋“ค์„ ๋งค์นญ ๋ฐ›์œผ์„ธ์š”.

programmers.co.kr

 

๐Ÿ‘จ‍๐Ÿ’ปํ’€์ด ๊ณผ์ •

 

์ฒ˜์Œ์—๋Š” ์ •๊ทœ์‹์„ ํ™œ์šฉํ•ด์„œ replace()๋ฅผ ํ• ๊นŒ ์ƒ๊ฐํ–ˆ์—ˆ๋Š”๋ฐ ๋ฌธ์ œ์˜ ์˜๋„(์ง์„ ๋ฐœ๊ฒฌํ•˜๋ฉด ์ œ๊ฑฐํ•˜๊ณ  ์•ž ๋’ค ๋ถ™์ด๋Š”)์™€๋Š” ๋งž์ง€ ์•Š์•˜๊ณ , ์ง์„ ๊ธฐ์ค€์œผ๋กœ ์•ž๊ณผ ๋’ค ๋ฌธ์ž์—ด์„ ํ•ฉ์น˜๋Š” ๊ณผ์ •์—์„œ ์˜ค๋ฒ„ํ—ค๋“œ๊ฐ€ ๋งŽ์ด ๋ฐœ์ƒํ•˜๋‹ˆ ์–ด๋–ป๊ฒŒ ํ•˜๋ฉด ์ข‹์„๊นŒ ๊ณ ๋ฏผ์ด์—ˆ์Šต๋‹ˆ๋‹ค.

 

๊ทธ๋Ÿฐ๋ฐ, ๋ณต์žกํ•  ๊ฒƒ ์—†์ด ์Šคํƒ(Stack)์„ ํ™œ์šฉํ•˜๋ฉด ์ •๋ง ์‰ฝ๊ฒŒ ํ’€๋ฆฌ๋Š” ๋ฌธ์ œ์˜€์Šต๋‹ˆ๋‹ค. ์ข€ ๋” ์‚ฌ๊ณ ๋ฅผ ํ™•์žฅํ•˜์—ฌ ์œ ์—ฐํ•˜๊ฒŒ ํ•  ํ•„์š”๊ฐ€ ์žˆ์„ ๊ฒƒ ๊ฐ™๋„ค์š”.

 

โœ๏ธ์†Œ์Šค ์ฝ”๋“œ ๋ฐ ๊ฒฐ๊ณผ

#include <string>
#include <stack>
using namespace std;

int solution(string s)
{
    stack<char> myStack;

    for (const auto alphabet : s) {
        if (myStack.empty()) {
            myStack.push(alphabet);
            continue;
        }

        if (myStack.top() == alphabet) {
            myStack.pop();
            continue;
        }

        myStack.push(alphabet);
    }
   
    return myStack.empty();
}

 

 

728x90
๋ฐ˜์‘ํ˜•