|
์ฝ๋ ์์ฑํ๊ธฐ
def solution(s):
stack=[]
for c in s :
if c=='(' :
stack.append(c)
else:
if len(stack)==0 :
return False
stack.pop()
if len(stack)!=0 :
return False
return True
Python
๋ณต์ฌ
|
์ฝ๋ ์ค๋ช
ํ๊ธฐ
stack์ ์ด์ฉํด ์ด๋ฆฐ ๊ดํธ์ด๋ฉด stack์ ๋ฃ์ด์ฃผ๊ณ ๋ซํ๊ดํธ์ด๋ฉด ์ด๋ฆฐ๊ดํธ์ ์ง์ ์ง์ด ์ญ์ ๋ฅผ ํ๋ค.
1.
์ด๋ฆฐ ๊ดํธ์ธ๊ฒฝ์ฐ๋ stack์ ๋ฃ๋๋ค.
2.
๋ซํ ๊ดํธ์ธ ๊ฒฝ์ฐ
a.
stack์ ์ด๋ฆฐ ๊ดํธ๊ฐ ์๋ค๋ฉด ์ฌ๋ฐ๋ฅด์ง ์์ ๊ดํธ์ด๋ฏ๋ก False๋ฅผ ๋ฐํํ๋ค.
b.
stack์ ์ด๋ฆฐ ๊ดํธ๊ฐ ์๋ค๋ฉด ํด๋น ๊ดํธ๋ฅผ ์ญ์ ํ๋ค.
3.
๋ฌธ์์ด์ ๋ค ๋๊ณ ๋์ stack์ ์ด๋ฆฐ ๊ดํธ๊ฐ ๋จ์์๋ค๋ฉด False๋ฅผ ๋ฐํํ๊ณ stack์ ์๋ฌด๊ฒ๋ ์๋ค๋ฉด True๋ฅผ ๋ฐํํ๋ค.