Algorithm/프로그래머스

[프로그래머스] 코드 처리하기

potato_pizza 2024. 3. 9. 18:55
728x90

Programmers

코드 처리하기

문제

코드

def solution(code):
    answer = '' # 최종 결과를 저장할 문자열
    mode = True
    for idx, val in enumerate(code): # val : code[idx]
        if mode:
            if val != '1' and idx % 2 == 0:
                answer = answer + val 
            elif val == '1':
                mode = False
        else:
            if val != '1' and idx % 2 != 0:
                answer = answer + val
            elif val == '1':
                mode = True
    if len(answer) == 0:
        return 'EMPTY'
    return answer
  • answer: 최종 결과를 저장할 문자열
  • mode; 현재 mode를 추적하는 boolean 변수(True,False)
  • mode = True
    • idx가 짝수, 현재 문자(val)이 1이 아니면, 'answer'에 해당 문자를 추가
    • 현재 문자가 '1'이면 mode -> False
  • mode = False
    • idx가 홀수이고 현재 문자(val)이 '1'이 아니면 'answer'에 해당 문자를 추가
    • 현재 문자가 '1'이면, mode -> True
  • answer가 비어있으면 EMPTY

Reference

728x90
반응형