SWEA

[SWEA] 4873 반복 문자 지우기 -python

peach_h 2023. 2. 18. 23:57

SW Expert Academy

 

SW Expert Academy

SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요!

swexpertacademy.com

대표적인 stack 문제유형 222 

중복 문자 지우기

우선 스택에 하나씩 담으면서 중복이 발생하면 pop하기 !

T = int(input())
for test_case in range(1,T+1):
    txt = list(input())
    stack = []
    for i in txt:
        # 스택이 비었으면 push
        if len(stack) == 0:
            stack.append(i)
        # 스택에 뭐가 있으면
        else:
            # 스택의 맨 마지막 문자가 i와 같으면 pop
            if i == stack[-1]:
                stack.pop()
            else:
                stack.append(i)
    # 남은 스택의 길이 출력
    print(f'#{test_case} {len(stack)}')

'SWEA' 카테고리의 다른 글

[SWEA] 4875 미로(백트래킹) - python  (0) 2023.02.19
[SWEA] 4874 Forth - python  (0) 2023.02.19
[SWEA] 4866 괄호검사 - python  (0) 2023.02.18
[SWEA] 4871 그래프 경로 -python  (0) 2023.02.14
[SWEA] 1974 스도쿠 검증 -python  (0) 2023.02.13