|
์ฝ๋ ์์ฑํ๊ธฐ
def solution(s):
answer = True
queue = []
for i in s:
if len(queue) == 0:
queue.append(i)
elif queue[-1]=='(' and i==')':
queue.pop()
else:
queue.append(i)
if len(queue):
return False
else:
return True
solution('()()')
Python
๋ณต์ฌ
|
์ฝ๋ ์ค๋ช
ํ๊ธฐ
์ด ๋ฌธ์ ๋ ํ๋ฅผ ํ์ฉํ๋ฉด ์ฝ๊ฒ ํด๊ฒฐํ ์ ์๋ค.
1.
๋ฌธ์์ด s๋ฅผ ์ํํ๋ฉฐ ๋ค์๊ณผ์ ์ ๋ฐ๋ณตํ๋ค.
a.
๋ง์ฝ ํ์ ํฌ๊ธฐ๊ฐ 0์ด๋ผ๋ฉด ํ์ ํ์ฌ ์ํํ๊ณ ์๋ ๊ดํธ๋ฅผ ๋ฃ๋๋ค.
b.
ํ๊ฐ ๋น์ด์์ง ์๋ค๋ฉด, ํ์ ๋ง์ง๋ง ๊ฐ์ด โ(โ์ด๋ฉด์ ํ์ฌ ์ํํ๊ณ ์๋ ๊ดํธ๊ฐ โ)โ์ด๋ผ๋ฉด ์ง์ด ๋ง๋ ๊ดํธ์ด๋ฏ๋ก ํ์ ๋ง์ง๋ง ๊ฐ์ ๋นผ์ค๋ค.
c.
๊ดํธ๊ฐ ๋ง์ง ์๋๋ค๋ฉด ํ์ ๋ฃ์ด์ค๋ค.
2.
๋ฌธ์์ด์ ๋ชจ๋ ์ํ ํ์ ํ์ ๋จ์์๋ ๊ดํธ๊ฐ ์๋ค๋ฉด false, ๋น์ด์๋ค๋ฉด true๋ฅผ ๋ฐํํด์ค๋ค.