프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
코드
from collections import deque
def is_right(s):
stack = []
for i in s:
if i == '[' or i == '{'or i == '(':
stack.append(i)
else:
if not stack:
return False
else:
if i == ']' and stack[-1] == '[':
stack.pop()
elif i == '}' and stack[-1] == '{':
stack.pop()
elif i == ')' and stack[-1] == '(':
stack.pop()
else:
return False
return (False if stack else True)
def solution(s):
answer = 0
q = deque(s)
for i in range(len(s)):
if is_right(q):
answer += 1
head = q.popleft()
q.append(head)
return answer
'문제풀이 > 기타' 카테고리의 다른 글
[Python/파이썬] 프로그래머스 주식가격 (1) | 2022.12.07 |
---|---|
[Python/파이썬] 프로그래머스 기능개발 (0) | 2022.11.16 |
[Python/파이썬] 프로그래머스 행렬의 곱셈 (0) | 2022.11.09 |
[Python/파이썬] 프로그래머스 H-Index (0) | 2022.11.08 |
[Python/파이썬] 프로그래머스 예상 대진표 (0) | 2022.11.02 |
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
코드
from collections import deque def is_right(s): stack = [] for i in s: if i == '[' or i == '{'or i == '(': stack.append(i) else: if not stack: return False else: if i == ']' and stack[-1] == '[': stack.pop() elif i == '}' and stack[-1] == '{': stack.pop() elif i == ')' and stack[-1] == '(': stack.pop() else: return False return (False if stack else True) def solution(s): answer = 0 q = deque(s) for i in range(len(s)): if is_right(q): answer += 1 head = q.popleft() q.append(head) return answer
'문제풀이 > 기타' 카테고리의 다른 글
[Python/파이썬] 프로그래머스 주식가격 (1) | 2022.12.07 |
---|---|
[Python/파이썬] 프로그래머스 기능개발 (0) | 2022.11.16 |
[Python/파이썬] 프로그래머스 행렬의 곱셈 (0) | 2022.11.09 |
[Python/파이썬] 프로그래머스 H-Index (0) | 2022.11.08 |
[Python/파이썬] 프로그래머스 예상 대진표 (0) | 2022.11.02 |