[프로그래머스 Lv.1] 비밀지도 (Python)

지윤·2023년 4월 6일

👩🏻‍💻

레벨 1을 쭉쭉 풀다가 멈칫했던 문제다. 코드 자체로는 완벽하다고 생각했는데 입력 예제 2번에서 공백이 다르게 나와서 시간을 많이 잡아먹었다.
원인을 찾아보니 bin 메소드가 이진수 맨앞의 0을 자동으로 생략하고 있었다...
그래서 zfill()을 통해 생략된 0을 넣어주었더니 바로 풀렸다.

코드

def solution(n, arr1, arr2):
    answer = []
    result = []
    for i in range(len(arr1)):
        binaryNum1 = int(bin(arr1[i])[2:])
        binaryNum2 = int(bin(arr2[i])[2:])
        answer.append((str(binaryNum1 + binaryNum2).zfill(n)))
    print(answer)
    for i in answer:
        string = ''
        for j in range(len(i)):
            if i[j] != '0':
                string += "#"
            else:
                string += " "
        result.append(string)
    return result
profile
떠돌이 컴공

0개의 댓글