최대 1 분 소요

https://school.programmers.co.kr/learn/courses/30/lessons/17681

.

나의 풀이

def solution(n, arr1, arr2):
    answer = []
    for idx in range(len(arr1)) :
        arr1_num = arr1[idx]
        arr2_num = arr2[idx]
        wall_str = ""
        for _ in range(len(arr1)) :
            if arr1_num % 2 == 1 or arr2_num % 2 == 1 :
                wall_str = '#' + wall_str
            else :
                wall_str = ' ' + wall_str
            arr1_num //= 2
            arr2_num //= 2
        answer.append(wall_str)
    return answer

다른 사람의 풀이

def solution(n, arr1, arr2) :
    answer = []
    for i, j in zip(arr1, arr2) :
        a12 = str(bin(i | j)[2 : ]) # 앞에 0b 없애는 코드
        a12 = a12.rjust(n, '0') # 길이가 n보다 모자라면 앞에 0을 채워넣는다.
        a12 = a12.replace('1', '#')
        a12 = a12.replace('0', ' ')
        answer.append(a12)
	return answer

rjust 함수에 대해서는 따로 포스팅을 하겠다.

댓글남기기