๋ฌธ์
ํ๋ก๊ทธ๋๋จธ์ค ์ฌ๋ฐ๋ฅธ ๊ดํธ
https://school.programmers.co.kr/learn/courses/30/lessons/12909/
์ฝ๋
def solution(s):
stack = []
for gwalho in s:
if not stack:
stack.append(gwalho)
else:
if gwalho == ')' and stack[-1] == '(':
stack.pop()
else:
stack.append(gwalho)
if stack:
return False
else:
return True
ํ์ด
stack = []
for gwalho in s:
์ ์คํ ๋ฐฐ์ด์ ์์ฑํ๊ณ
์ ๋ ฅ๋ฐ์ ๋ฌธ์์ด์์ ๊ดํธ๋ฅผ ํ๋์ฉ ๊ฐ์ ธ์จ๋ค.
if not stack:
stack.append(gwalho)
์คํ์ ์๋ฌด๊ฒ๋ ๋จ์์์ง ์์๋ค๋ฉด ๋ฐ์์จ ๊ดํธ ํ๋๋ฅผ ์คํ์ ๋ฃ๋๋ค
else:
if gwalho == ')' and stack[-1] == '(':
stack.pop()
else:
stack.append(gwalho)
์คํ์ ๊ดํธ๊ฐ ์๋ค๋ฉด
์ง๊ธ ๋ฐ์์จ ๊ดํธ์ ์คํ ๋ง์ง๋ง์ ์๋ ๊ดํธ๊ฐ () ์ง์ ์ด๋ฃจ๋์ง ํ์ธํ๊ณ ,
์ง์ ์ด๋ฃฌ๋ค๋ฉด ์คํ์ ์๋ ๋ง์ง๋ง ๊ดํธ ํ๋๋ฅผ ์ง์ด๋ค.
์ง์ ์ด๋ฃจ์ง ์๋๋ค๋ฉด ๊ฐ์ ธ์จ ๊ดํธ ํ๋๋ฅผ ์คํ์ ๋ฃ๋๋ค.
if stack:
return False
else:
return True
๋ชจ๋ ๊ดํธ๋ฅผ ๋ ๋ค,
์คํ์ () ์ง์ ์ง์ง ๋ชปํ๊ณ ๋จ์์๋ ๊ดํธ๊ฐ ์์ผ๋ฉด False๋ฅผ ๋ฐํํ๊ณ
๋ชจ๋ ๊ดํธ๊ฐ () ์ง์ ์ง์ด ์คํ์ด ๋น ์ํ๋ผ๋ฉด True๋ฅผ ๋ฐํํ๋ค.
๋ ๋์ ํ์ด
๋ง์ง๋ง์ ์ฝ๋๋ฅผ ์ผํญ ์ฐ์ฐ์ ํํ๋ก ๋ํ๋ผ ์ ์๋ค. ์ผํญ ์ฐ์ฐ์๋ก ๋ํ๋ด๋ฉด ์ฝ๋์ ๊ฐ๋ ์ฑ์ด ์ข์์ง๊ณ , ํ์ค์ ์ฝ๋๋ง์ผ๋ก ๋๋ผ ์ ์๋ค.
if stack:
return False
else:
return True
>>>>>
return False if stack else True
๋ค๋ฅธ ๋ฐฉ๋ฒ
def solution(s):
stack = []
for bracket in s:
if bracket == '(':
stack.append(bracket)
elif bracket == ')':
if len(stack) == 0:
return False
stack.pop()
return len(stack) == 0
๊ฐ์ ์คํฐ๋์์ ์ฝ๋!
๋์ ํ์ด์ฒ๋ผ () ์คํ์ด ๋น๋์ง, ์ง์ด ์ง์ด์ง๋์ง ์ผ์ผ์ด ๋ค ํ์ธ ์ํด๋ ๋๋ค.
๋ ์ง๊ด์ ์ด๊ณ ๋ณด๊ธฐ ์ฌ์ด ์ฝ๋์ธ๊ฒ ๊ฐ๋ค.
์๋กญ๊ฒ ๋ฐฐ์ด์ / ๋๋์
- ํญ์ ์ฌ๋ฌ์ค์ if-else๋ฌธ์ผ๋ก ํจ์์ ๋ถ๋ฆฐ๊ฐ์ ๋ฆฌํดํด ์๋๋ฐ, ์์ผ๋ก ๋จ์ผ ์กฐ๊ฑด์ ์ผํญ์ฐ์ฐ์๋ก ์ ์ด๋ณด๋ ์ต๊ด์ ๋ค์ฌ์ผ๊ฒ ๋ค.
- ๋์ ์ฝ๋๊ฐ ์คํ์๋ ์ธก๋ฉด์์ ๋น ๋ฅด์ง๋ง ๊ฐ๋ ์ฑ์ด ๋จ์ด์ง๋๊ฒ ๊ฐ๋ค. ์๊ฐ๋ณต์ก๋๋ฅผ ์ ๊ฒฝ์ฐ๋ฉด์ ์ฝ๋๋ฅผ ์์ฑํ๋, ์ฝ๋๋ฅผ ๋ค ์ง๋ฉด ๊ฐ๋ ์ฑ๋ ์ ๊ฒฝ์จ์ ์์ ํด๋ณด๋ ์ฐ์ต์ ํด์ผ๊ฒ ๋ค.
'์ฝ๋ฉํ ์คํธ๐ก' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[ํ๋ก๊ทธ๋๋จธ์ค] ์นดํซ (0) | 2024.05.28 |
---|---|
[ํ๋ก๊ทธ๋๋จธ์ค] ๊ฐ์ฅ ํฐ ์ (0) | 2024.05.26 |
[ํ๋ก๊ทธ๋๋จธ์ค] ๊ธฐ๋ฅ๊ฐ๋ฐ (0) | 2024.05.22 |
[ํ๋ก๊ทธ๋๋จธ์ค] ์์ (0) | 2024.05.21 |
[ํ๋ก๊ทธ๋๋จธ์ค] ์ ํ๋ฒํธ๋ชฉ๋ก (0) | 2024.05.21 |