아무나개발하자

짝지어 제거하기 본문

코딩테스트

짝지어 제거하기

개발천재나천재 2022. 12. 25. 01:18

문제

https://school.programmers.co.kr/learn/courses/30/lessons/12973

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

 

풀이

'''
문제 해결 방법
이건 스택으로 풀면 될거 같다
1. 스택 배열을 선언한다.
2. 스택의 len이 2개 이상이면 두개의 문자열 알파벳이 동일한지 비교
3. 같으면 pop 2번, 아니면 그냥 넘어감
'''

def solution(s):
    answer = -1
    stack = []
    
    for elem in s:
        stack.append(elem)
        if (len(stack) >= 2):
            back = len(stack) - 1
            back_plusOne = len(stack) - 2
            if(stack[back] == stack[back_plusOne]):
                stack.pop()
                stack.pop()
                
    if (len(stack) == 0):
        answer = 1
    else:
        answer = 0
    return answer

 

출처 : https://school.programmers.co.kr/learn/courses/30/lessons/12973

'코딩테스트' 카테고리의 다른 글

귤 고르기  (0) 2022.12.30
할인 행사  (0) 2022.12.26
2개씩 그룹짓기  (0) 2022.08.05
완전수 판별기  (0) 2022.08.03
청소당번 정하기  (0) 2022.08.02