[1차] 비밀지도

발자·2022년 9월 13일
0

programmers

목록 보기
9/34

def solution(n, arr1, arr2):
    answer = []

    for i in range(0, n) :
        # arr1, arr2 i번째 원소 2진수 변환
        bin1 = format(arr1[i], 'b')
        fullBin1 = '0'*(n-len(bin1)) + bin1
        bin2 = format(arr2[i], 'b')
        fullBin2 = '0'*(n-len(bin2)) + bin2

        # '#', 공백으로 해독 후 배열에 추가
        element = ''
        for j in range(0, n) :
            if fullBin1[j]=='0' and fullBin2[j]=='0' :
                element += ' '
            else :
                element += '#'
        answer.append(element)

    return answer

🗝️ 2진수, 8진수, 16진수 ↔ 10진수 변환
🧩 bin(첫 번째 10진수|두 번째 10진수)를 하면 각 10진수를 2진수로 변환한 후, 같은 자리에 모두 '0'이 오면 '0', 하나 이상 '1'이면 '1'로 반환한다.
🧩 '0'*n+str 대신에 rjust() 함수를 사용하면 간단하다.
🗝️ rjust(), ljust(), zfill()

0개의 댓글