새벽_나그네
12시 지난 새벽
새벽_나그네
전체 방문자
오늘
어제
  • 분류 전체보기
    • TIL
    • DevLog
    • Algorithm
    • ComputerScience
    • etc

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

  • Github
  • 내일배움카드
  • Selenium 4
  • 내일배움캠프
  • portfolio
  • docker
  • 코딩
  • 코딩프로젝트
  • 프로그래머스
  • 자기주도학습
  • til
  • TodayILearned
  • Python
  • 국비지원
  • 내일배움단
  • 개발일지
  • AI트랙
  • machine learning
  • 코린이
  • 스파르타코딩클럽

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
새벽_나그네

12시 지난 새벽

Algorithm

[프로그래머스] 코딩테스트 연습2017 팁스타운 짝지어 제거하기

2022. 7. 14. 23:06

문제

문제 설명

짝지어 제거하기는, 알파벳 소문자로 이루어진 문자열을 가지고 시작합니다. 먼저 문자열에서 같은 알파벳이 2개 붙어 있는 짝을 찾습니다. 그다음, 그 둘을 제거한 뒤, 앞뒤로 문자열을 이어 붙입니다. 이 과정을 반복해서 문자열을 모두 제거한다면 짝지어 제거하기가 종료됩니다. 문자열 S가 주어졌을 때, 짝지어 제거하기를 성공적으로 수행할 수 있는지 반환하는 함수를 완성해 주세요. 성공적으로 수행할 수 있으면 1을, 아닐 경우 0을 리턴해주면 됩니다.

예를 들어, 문자열 S = baabaa 라면

b aa baa → bb aa → aa →

의 순서로 문자열을 모두 제거할 수 있으므로 1을 반환합니다.

제한사항
  • 문자열의 길이 : 1,000,000이하의 자연수
  • 문자열은 모두 소문자로 이루어져 있습니다.

 

입력 & 출력

입출력 예

sresult

baabaa 1
cdcd 0

 

풀이 과정

1. 두 개씩 짝지어서 제거를 하면 되는 문제였다. 제거를 해야 한다면 스택과 팝을 이용하면 된다. 

2. 처음에는 s값을 한개씩 빼서 stack에 차곡차곡 append 해주는 것으로 시작하여 이미 저장된 값과 현재의 값을 계속 비교하면서

같은 숫자이면 pop을 하는 방식으로 진행하면 되겠다.

 

코드

def solution(s):
    stack = []
    for c in s:
        if stack:
            if stack[-1] == c:
                stack.pop()
            else:
                stack.append(c)
        else:
            stack.append(c)
    if stack:
        return 0
    else:
        return 1
저작자표시 비영리 변경금지 (새창열림)

'Algorithm' 카테고리의 다른 글

[프로그래머스] 코딩테스트 연습2019 카카오 개발자 겨울 인턴십 크레인 인형뽑기 게임  (0) 2022.07.17
[프로그래머스] 코딩테스트 연습월간 코드 챌린지 시즌1 두 개 뽑아서 더하기  (0) 2022.07.15
[프로그래머스] 코딩테스트 연습깊이/너비 우선 탐색(DFS/BFS)타겟 넘버  (0) 2022.07.10
[프로그래머스] 코딩테스트 연습월간 코드 챌린지 시즌1내적  (0) 2022.07.04
[프로그래머스] 코딩테스트 연습연습문제 직사각형 별찍기  (0) 2022.07.03
    'Algorithm' 카테고리의 다른 글
    • [프로그래머스] 코딩테스트 연습2019 카카오 개발자 겨울 인턴십 크레인 인형뽑기 게임
    • [프로그래머스] 코딩테스트 연습월간 코드 챌린지 시즌1 두 개 뽑아서 더하기
    • [프로그래머스] 코딩테스트 연습깊이/너비 우선 탐색(DFS/BFS)타겟 넘버
    • [프로그래머스] 코딩테스트 연습월간 코드 챌린지 시즌1내적
    새벽_나그네
    새벽_나그네
    IT, 프로그래밍, 정보, 스마트스토어

    티스토리툴바