def solution(n, arr1, arr2):
arr1 = [['#' if i == '1' else ' ' for i in bin(num)[2:].zfill(n)] for num in arr1]
arr2 = [['#' if i == '1' else ' ' for i in bin(num)[2:].zfill(n)] for num in arr2]
for i in range(n):
for j in range(n):
if arr1[i][j] == ' ' and arr2[i][j] == '#':
arr1[i][j] = '#'
return [''.join(num) for num in arr1]
먼저 받아온 arr1
과 arr2
를 bin
함수로 이진수화한다.
그리고 [2:]
로 0b
를 없애준 뒤,
zfill
함수로 남은 칸을 0으로 채워준다.
그런 다음에 for
문을 돌리면서 0일경우 빈칸, 1일경우 #으로 바꿔준다.
변환이 끝나면 다시 for
문을 돌려가면서
arr1
가 빈칸인데 arr2
가 #인 경우를 채워나간다.
마지막으로, join
함수를 이용해 이차원 배열 안의 원소들을 문자열으로 합쳐준다.