Skip to content

Commit 87a3d1d

Browse files
Update taurus09318976.py
1 parent 54ee381 commit 87a3d1d

File tree

1 file changed

+40
-0
lines changed

1 file changed

+40
-0
lines changed
Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1 +1,41 @@
1+
'''
2+
이 λ¬Έμ œλŠ” μ£Όμ–΄μ§„ κ΄„ν˜Έ λ¬Έμžμ—΄ (), {}, []이 μ˜¬λ°”λ₯΄κ²Œ λ‹«ν˜”λŠ”μ§€ ν™•μΈν•˜λŠ” λ¬Έμ œμž„
13
4+
쑰건 : 1) 같은 νƒ€μž…μ˜ κ΄„ν˜Έλ‘œ λ‹«ν˜€μ•Ό 함
5+
2) κ΄„ν˜Έκ°€ μ˜¬λ°”λ₯Έ 'μˆœμ„œ'둜 λ‹«ν˜€μ•Ό 함
6+
3) λͺ¨λ“  λ‹«λŠ” κ΄„ν˜ΈλŠ” λŒ€μ‘ν•˜λŠ” μ—¬λŠ” κ΄„ν˜Έκ°€ μžˆμ–΄μ•Ό 함
7+
8+
해결방법 : μŠ€νƒ 자료 ꡬ쑰λ₯Ό μ‚¬μš©ν•˜μ—¬, μ—¬λŠ” κ΄„ν˜ΈλŠ” μŠ€νƒμ— λ„£κ³ ,
9+
λ‹«λŠ” κ΄„ν˜Έκ°€ λ‚˜μ˜€λ©΄ μŠ€νƒμ˜ λ§ˆμ§€λ§‰ μš”μ†Œμ™€ 짝이 λ§žλŠ”μ§€ 확인해야 함.
10+
11+
예λ₯Ό λ“€μ–΄, s = "([)]"
12+
13+
1. ( β†’ μŠ€νƒ μΆ”κ°€
14+
2. [ β†’ μŠ€νƒ μΆ”κ°€
15+
3. ) β†’ μŠ€νƒ λ§ˆμ§€λ§‰ [와 짝이 μ•ˆ 맞음 β†’ False
16+
17+
'''
18+
19+
class Solution:
20+
def isValid(self, s: str):
21+
stack = []
22+
# λ‹«λŠ” κ΄„ν˜Έλ₯Ό ν‚€λ‘œ, μ—¬λŠ” κ΄„ν˜Έλ₯Ό κ°’μœΌλ‘œ λ”•μ…”λ„ˆλ¦¬μ— μ €μž₯
23+
pair = {')': '(', '}': '{', ']': '['}
24+
25+
for char in s:
26+
27+
#char이 μ—¬λŠ” κ΄„ν˜ΈμΈμ§€ 확인 ν›„ 맞으면 μŠ€νƒμ— μΆ”κ°€
28+
if char in pair.values():
29+
stack.append(char)
30+
31+
32+
else:
33+
#μŠ€νƒμ΄ λΉ„μ–΄ 있으면 짝이 λ§žλŠ” μ—¬λŠ” κ΄„ν˜Έκ°€ μ—†μŒ
34+
#μŠ€νƒμ˜ λ§ˆμ§€λ§‰ μš”μ†Œμ™€ ν˜„μž¬ λ‹«λŠ” κ΄„ν˜Έμ˜ 짝이 λ‹€λ₯΄λ©΄ 잘λͺ»λœ λ¬Έμžμ—΄μž„
35+
if not stack or pair[char] != stack.pop():
36+
37+
#λͺ¨λ“  문자 처리 ν›„ μŠ€νƒμ΄ λΉ„μ–΄ μžˆμ–΄μ•Ό μ˜¬λ°”λ₯Έ λ¬Έμžμ—΄μž„
38+
return False
39+
40+
#μŠ€νƒμ΄ λΉ„μ–΄μžˆμ–΄μ•Ό λͺ¨λ“  κ΄„ν˜Έκ°€ λ‹«νž˜
41+
return not stack

0 commit comments

Comments
Β (0)