반응형
https://school.programmers.co.kr/learn/courses/30/lessons/12973
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
def solution(s):
stack = []
for c in s:
if len(stack) == 0:
stack.append(c)
elif stack[-1] == c:
stack.pop()
else:
stack.append(c)
if len(stack) == 0:
return 1
else:
return 0
stack 자료구조를 이용하여 문제를 해결하였습니다.
주어진 문자열 s를 반복하면서 stack이 비어있다면 stack에 문자(c)를 추가해주고
stack의 마지막 원소([-1]가 현재 문자(c)와 동일하다면 stack에서 마지막원소를 제거해줍니다.
동일하지 않은 경우 stack에 현재 문자(c)를 추가해줍니다.
반복문이 종료가 된 후 stack에 남아있는 문자 없는경우 모든 문자를 제거하였기 때문에 1을 반환해주고
문자가 남아있다면 모든 문자를 제거하지 못했기 때문에 0을 반환합니다.
반응형
'코딩테스트' 카테고리의 다른 글
[코딩테스트] 프로그래머스 가장 가까운 같은 글자 파이썬(Python) (0) | 2022.12.15 |
---|---|
[코딩테스트] 프로그래머스 상품을 구매한 회원 비율 구하기 MySQL (0) | 2022.12.15 |
[코딩테스트] 프로그래머스 오프라인/온라인 판매 데이터 통합하기 MySQL (0) | 2022.12.12 |
[코딩테스트] 프로그래머스 그룹별 조건에 맞는 식당 목록 출력하기 MySQL (0) | 2022.12.10 |
[코딩테스트] 프로그래머스 입양 시각 구하기(2) MySQL (0) | 2022.12.09 |