<aside> 💡

이중 조건문을 어떻게 잘 처리할 것인가

</aside>

181932

1. 내가 작성한 코드

작성한 것(미해결)

def solution(code):
    answer = ''
    ret = []
    mode = [0,1]
    for i in range(len(code)):
        mode = 0
        #mode가 0일 경우 짝수만 추가
        if mode == 0:
            if i % 2 == 0:
                ret.append(code[i])
            if code[i] == "1":
                print(code[i])
                mode = 1
                break
        #mode가 1인 경우 홀수만 추가
        if mode == 1:
            if i % 2 != 0:
                ret.append(code[i])
            if code[i] == "1":
                mode = 0
                break
        continue
    return ret

코드의 문제점

GPT 도움 코드

def solution(code):
    answer = ''
    ret = []
    mode = 0
    for i in range(len(code)):
        if code[i] == "1":
            mode = 1 - mode
        else:
            if mode == 0 and i % 2 == 0:
                ret.append(code[i])
            elif mode == 1 and i % 2 != 0:
                ret.append(code[i])
    answer = ''.join(ret)

    if len(ret) == 0:
        return "EMPTY"
    
    return answer

2. 핵심 아이디어

3. 보완할 점


def solution(code):
    return "".join(code.split("1"))[::2] or "EMPTY"