01. 짝지어 제거하기
코딩테스트 연습 > 2017 팁스타운 > 짝지어 제거하기
https://programmers.co.kr/learn/courses/30/lessons/12973
Input value =
Process =
같은 알파벳 2개가 붙어 있는 짝을 찾아 제거
앞 뒤로 문자열을 이어 붙인다.
1-2를 반복해서 문자열을 제거(갱신)
Output value =
s = ' ' 일 경우 1
아닐 경우 0
문자열의 길이 : 1,000,000이하의 자연수
문자열은 모두 소문자로 이루어져 있다.
#00
s = 'baabaa'
answer = []
#01
for i in s:
if answer == [] or answer[-1]!=i:
answer.append(i)
else:
answer.pop()
if answer == []:
print(1)
else:
print(0)
def solution(s):
answer = []
for i in s:
if answer == [] or answer[-1]!=i:
answer.append(i)
else:
answer.pop()
if answer == []:
return 1
return 0
# Code test
s = 'baabaaa'
solution(s)
빈 리스트를 만들어 하나씩 값을 필터링 하며 계산하는 것
문자열 그대로 사용하지 않는 이유는 해당 과정을 수행하며 이미 수행된 값을 제거해야 함으로(pop() 사용하기 위해)