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
반응형
'Algorithm > 프로그래머스' 카테고리의 다른 글
[프로그래머스] 수 조작하기 2 - 파이썬 (0) | 2024.03.13 |
---|---|
[프로그래머스] 이어붙인 수 - 파이썬 (0) | 2024.03.12 |
[프로그래머스] flag에 따른 다른 값 반환하기 (0) | 2024.03.07 |
[프로그래머스] 조건 문자열 (0) | 2024.03.07 |
[프로그래머스] 홀짝에 따른 다른 값 반환하기 (0) | 2024.03.07 |
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
반응형
'Algorithm > 프로그래머스' 카테고리의 다른 글
[프로그래머스] 수 조작하기 2 - 파이썬 (0) | 2024.03.13 |
---|---|
[프로그래머스] 이어붙인 수 - 파이썬 (0) | 2024.03.12 |
[프로그래머스] flag에 따른 다른 값 반환하기 (0) | 2024.03.07 |
[프로그래머스] 조건 문자열 (0) | 2024.03.07 |
[프로그래머스] 홀짝에 따른 다른 값 반환하기 (0) | 2024.03.07 |