이전 문자를 담을 수 있는 변수 s1를 선언
s1과 현재 문자가 같다면 replace로 지우기
같지 않다면 s1은 현재 문자로 바꾸기
s의 길이가 줄어들지 않는다면 0 리턴
s의 길이가 0이면 되면 1 리턴
문제점
s1을 초기화 안해주면 문자는 같은데 지워지지않는 오류 발생
s1을 초기화 -> 시간초과
def solution(s):
s1 = ''
while s:
l = len(s)
for i in range(len(s)):
if s1 == s[i]:
s = s.replace(s1*2, '')
s1 = ''
break
else:
s1 = s[i]
if l == len(s):
return 0
return 1
stack을 이용
def solution(s):
stack = []
for i in s:
if stack:
p = stack.pop()
if i == p:
continue
else:
stack.append(p)
stack.append(i)
else:
stack.append(i)
return int(not(stack))
성공!