๋ฐฑ์ค 9012๋ฒ
์ ๋ ฅ์ผ๋ก '(())())' ์ ๊ฐ์ ๋ฌธ์์ด์ด ๋ค์ด์จ๋ค ๊ดํธ๊ฐ ์์ด ๋ง๊ฒ ์ ๋ซํ์๋์ง์ ๋ฐ๋ผ 'YES', 'NO'๋ก ์ถ๋ ฅํด์ฃผ๋ฉด ๋๋ ๋ฌธ์ ์ ๋๋ค.
import sys
input = sys.stdin.readline
n = int(input())
for _ in range(n):
str = input().strip()
str_li = []
answer = 'YES'
for s in str:
if s == '(':
str_li.append(s)
elif s == ')':
if len(str_li) > 0:
str_li.pop()
else:
answer = 'NO'
break
if len(str_li) > 0:
answer = 'NO'
print(answer)
๋จ๊ณ๋ณ ๋ฌธ์ ํ๊ธฐํ๋ค๊ฐ ๋งํ ๋ฐฑ์ค ๊ฐ์์์ ์๋ฃ๊ตฌ์กฐ ์ด๊ธ๋ฐ์ ๋ฌถ์ด๋์ ๋ฌธ์ ๋ฅผ ํ๊ณ ์์ต๋๋ค. ์ ๋ฌธ์ ๋ stack
์ ์ฌ์ฉํ๋ ๋ฌธ์ ์
๋๋ค.
์ด ๋ฌธ์ ๋ ์ด๊ธ์ด๋ผ๊ณ ๋ ํ์ง๋ง ๋์๊ฒ๋ ์ด๋ ค์์ ํธ๋ ๋ฐฉ๋ฒ์ ์์๋ธ ๋ค์ ๋ค์ ํ์ด์ ํด๊ฒฐํ์ต๋๋ค..ใ
์ฐ์ต์ด ๋ง~~์ด ํ์ํ๋ค๋ ๊ฒ์ ๋ ๋๊ปด์ง๋ค์..