[TIL #3] ์์ฌ์ผ์ผ์ ์ํ์ด ์๋ ๋ (2023.02.27 ์)
2023. 2. 27. 22:24ใToday I Learned
TIL 2023.02.27 ๐ฃ
์๋น ๊ฐ ์ฐ์ฐจ๋ด๊ณ ์ง์ ๊ณ์
์ ๊ทธ๋ฐ์ง ๋๋ ํด์ผ๊ฐ๋ค. ๋ฐฑ์๋ผ ๋งค์ผ๋งค์ผ์ด ํด์ผ์ด๊ธด ํ๋ฐ,,, ๋๋์ด ๋ค๋ฅด๋ค. ๊ทธ๋์ ์ ์ง ๋๋ ์ฌ์ด๋ ๋ ๊ฑฐ ๊ฐ์ ๊ทธ๋ฐ ๋๋์ด ๋ค์์ง๋ง ๊ฒจ์ฐ ์ด๊ฒจ๋๋ค. ํํ
๋ด์ผ์ด ์ง๋๋ฉด ๋ ์ผ์ผ์ ์ด๋ผ ํด์ผ์ธ๋ฐ, ๊ผญ ์กฐ๊ธ์ด๋ผ๋ ๊ณต๋ถํ๊ธธ ๋ฏธ๋ฆฌ ๋ค์งํ๋ค.
์ค๋ ๋ฐฐ์ด ๊ฒ ๐ฉ๐ป๐ป
- ๋ฆฌ์กํธ ๊ฐ์ ์น์
2๋ฅผ ๋ค์๋ค. ๋ฆฌ์กํธ ๋ฐฐ์ฐ๊ธฐ ์ , ์๋ฐ์คํฌ๋ฆฝํธ ๋ณต์ต๊ธฐ๊ฐ์
๋๋ค.
- ๋ถ๋ช
์์ ์ ๋ณ์ ์ ์ธํ ๋
var
๋ฅผ ์ป๋๊ฑฐ ๊ฐ์๋ฐ, ์์ฆ์let
์ ์ฐ๊ธธ๋ '์ ๋ด ๊ธฐ์ต์ด ์๋ชป๋๋?' ํ๋๋ฐvar
์let
๋๋ค ๋ณ์์ ์ธ์ด ๊ฐ๋ฅํ๋ค. → ํ์ง๋ง ๋ ๋ฐฉ์์ ์ฐจ์ด์ ์ด ์๋ค.var
๋ ๋์ผํ ๋ณ์๋ช ์ผ๋ก ๋ณ์๋ฅผ ์ฌ๋ฌ๊ฐ ์ ์ธํ ์ ์๋ค. (๋ณ์ ์ค๋ณต ์ ์ธ ๊ฐ๋ฅ) ๋์ค์ ํผ๋์ ์ผ๊ธฐํ ์ ์๊ธฐ ๋๋ฌธ์let
์ ์ฐ๋๊ฒ ์ข๋ค๊ณ ํ๋ค.
- ๋ถ๋ช
์์ ์ ๋ณ์ ์ ์ธํ ๋
- ์๊ณ ๋ฆฌ์ฆ์ ํ์๋ค
- ๋ฐฑ์ค 24262 : ๋ฌธ์ ๊ฐ ๋ ํน์ดํ๋ค. ๊ทธ๋ฅ ์ถ๋ ฅ๋ง ํ๋ฉด ๋๋ ๋ฌธ์ ์๋ค๋..
- ๋ฐฑ์ค 1974 : ๋ฌธ์ ๋ด์ฉ ํด์ํ๋ ค๋ ์ด๋ ค์ ๋ค..์๊ณ ๋ฆฌ์ฆ ๋ฌธ์ ๋ ํด ๋ฅ๋ ฅ๋ ํค์์ผํ๋ค ๐
- ๋ฐฑ์ค 15829 : ๊ฐ๋จํ ํด์ ํจ์ ๊ตฌํํ๋ ๋ฌธ์ . ๋ฌธ์ ๊ฐ ๊ธธ์ด์ ์ซ ์ ์์ง๋ง ๋น๋นํ ์ด๊ฒจ๋!
- ํ๋ก๊ทธ๋๋จธ์ค ์นด๋ ๋ญ์น : ๋ ๋ฒจ 1์ ๋ฌธ์ . ์์ ์๋ ์ฝ๋ฉํ
์คํธ๊ฐ ๋ฏ์ค๋ค๋ณด๋ ๋ ๋ฒจ 1๋ ์ด๋ ค์ ๋๋ฐ ์ด์ ์ด์ ๋๋ ๊ป์ด๋ค! ์ผํธ
์ ์๋ฆฌ ๊ฑท๊ธฐ ํ๊ณ ์๋ ๊ฑฐ ๊ฐ์๋ ๋๋ ๋ถ๋ช ํ ์กฐ๊ธ์ฉ์ ์ฑ์ฅํ๊ณ ์๋ค. ๊ธ์ ํ์๋ฅผ ๋ฏฟ๊ณ ๋๋ฅผ ๋ฏฟ๊ณ ๋์๊ฐ์. - ๋ฐฑ์ค 4949 : flag ๋ฅผ ์ฌ์ฉํ์ง ์๊ณ ๊ดํธ ์ฒดํฌ๋ฅผ ํ ์ ์๋ ๋ฐฉ๋ฒ์ด ์์๊น -> ๊ท ํ ์กํ ๋ฌธ์์ด์ธ์ง ์๋์ง๋ฅผ ๋ฐํํ๋ ๋ถ๋ถ์ ํจ์ํ ํ๋ฉด ๋ ๊ฒ ๊ฐ๋ค!
์ ์ถํ ์์ค
import sys
while True:
s_input = sys.stdin.readline().rstrip()
stk = []
flag = False
if s_input == '.':
break
for s in s_input:
if s == '(' or s == '[':
stk.append(s)
elif s == ')' :
if not stk or stk[-1] != '(':
flag = True
break
else:
stk.pop()
elif s == ']':
if not stk or stk[-1] != '[':
flag = True
break
else:
stk.pop()
if flag or stk:
print("no")
else:
print("yes")
ํจ์ํํ๊ธฐ
import sys
def isBalanced(s_input):
for s in s_input:
if s == '(' or s == '[':
stk.append(s)
elif s == ')' :
if not stk or stk[-1] != '(':
return "no"
else:
stk.pop()
elif s == ']':
if not stk or stk[-1] != '[':
return "no"
else:
stk.pop()
if stk:
return "no"
else:
return "yes"
while True:
s_input = sys.stdin.readline().rstrip()
stk = []
flag = False
if s_input == '.':
break
# ํจ์ ํธ์ถ
print(isBalanced(s_input))
: flag๋ฅผ ์์ ๋ ๋ณด๋ค ๋ช ํํด์ง ๋ฏํ๋ค. ์๊ณ ๋ฆฌ์ฆ ๋ฌธ์ ์์๋ ์ ์ฐํ๊ฒ ํจ์๋ฅผ ํ์ฉํ๋ฉด ๋ ์ข์ ๊ฒ ๊ฐ๋ค!
์ถ๊ฐ์ ์ผ๋ก ํ๋ฉด ์ข์ ๊ฒ ๐
- ์๊ณ ๋ฆฌ์ฆ ๋ฌธ์ ํ์๋ค๊ณ ์ผํธ! ํ๊ณ ๋๋ผ๊ฒ ์๋๋ผ ๋ค๋ฅธ ์ฌ๋๋ค์ ํ์ด๋ ๋ณด๋ฉด์ ์ ๊ทน์ ์ผ๋ก ํผ๋๋ฐฑํด๋๊ฐ์ผ๊ฒ ๋ค.
- ๋ค์ํ ํ์ด๋ฐฉ์์ ์ ์ํด๋๊ฐ๊ธฐ.
๊ธฐํ ๐ค
3์ผ์ฐจ ์๋ฃ
๋ด์ผ๋ ๊ผญ๊ผญ TIL ๊ธฐ๋กํ๊ธฐ.
'Today I Learned' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[TIL #6] 6์ผ์ฐจ (2023.03.02 ๋ชฉ) (0) | 2023.03.02 |
---|---|
[TIL #5] 5์ผ์ฐจ, 3์์ ์์! (2023.03.01 ์) (0) | 2023.03.01 |
[TIL #4] 4์ผ์ฐจ์ ๋๋ค! ์ค๋๋ ๊ณต๋ถ๊ณต๋ถ (2023.02.28 ํ) (0) | 2023.02.28 |
[TIL #2] ์ฌํ๋ค๋ ์จ ๋ TIL (2023.02.26 ์ผ) (0) | 2023.02.26 |
[TIL #1] TIL ์ฒซ ๊ธฐ๋ก ๐ (2023.02.25 ํ ) (1) | 2023.02.25 |