IT/알고리즘 / / 2023. 5. 22.

[파이썬 알고리즘 문제] 짝지어 제거하기

728x90
728x90

1. 문제 정보


 

2. 접근 방법


  • 연달아 들어오는 문자가 동일하면 지우자
    • 탐색 대상인 문자열이 계속 바뀐다는 것
    • 이런 작업에 while문 사용해 idx로 참조하면 자칫 무한루프 빠질 수 있음
    • for문을 쓰면 좋은데, 어떻게 쓰면 좋을까?
      • 문자열을 list()로 변환 후, 다른 list()에 하나씩 pop() 시키면서 값을 비교하자

 

 

3. 코드


def solution(s):
    s1 = list(s)
    s2 = list()
    for c in s1:
        if len(s2) == 0: s2.append(c) 
        elif s2[-1] == c: s2.pop(-1)
        else:   s2.append(c)        
    if len(s2) == 0: return 1
    else: return 0
320x100
  • 네이버 블로그 공유
  • 네이버 밴드 공유
  • 페이스북 공유
  • 카카오스토리 공유