https://school.programmers.co.kr/learn/courses/30/lessons/17681
소스코드
def solution(n, arr1, arr2):
answer = []
for i in range (n):
secret = arr1[i] | arr2[i]
maps = bin(secret)
maps = maps[2:]
maps = maps.rjust(n,'0')
maps = maps.replace('1','#')
maps = maps.replace('0',' ')
answer.append(maps)
return answer
풀이
1. 보자마자 비트 연산이 떠올랐다. -> | 연산자를 통해 숫자를 계산함
2. 숫자를 bin()함수를 사용해 2진수를 만들고 앞에 붙는 2진수를 나타내는 기호 0b를 제거한다.
3. 부족한 글자수를 채워준다
ex) 0011110 -> 1110 -> '### ' 이렇게 되지않게 하기 위함
4. 글자를 '#'과 ' '으로 바꿔주고 답 제출
'Coding test' 카테고리의 다른 글
sort(), sorted() 실행 시간 in 백준 (0) | 2024.03.19 |
---|---|
[프로그래머스/파이썬/가장 큰 정사각형 구하기] (0) | 2024.03.09 |
[프로그래머스/Lv.1/파이썬] 다트게임 (0) | 2024.03.08 |
[프로그래머스/Lv.1/파이썬] 키패드 누르기 (0) | 2024.03.07 |
[프로그래머스/Lv.1/파이썬] 성격 유형 검사하기 (0) | 2024.03.07 |