728x90
320x100
def solution(n, arr1, arr2):
answer = []
for i in range(n):
num = bin(arr1[i] | arr2[i])
num = num[2:].zfill(n)
num = num.replace('1', '#').replace('0', ' ')
answer.append(num)
return answer
제대로 못풀어서 이해 가능한 다른분의 깔끔한 코드를 가지고 왔다.
1. n만큼 포문을 돌려주고
2. bin()함수를 사용해서 2진수로 변환해준다. 변환할 때 아예 두 리스트를 or 연산으로 맹글어 버림.
3. 2진수로 변환하면 앞에 '0b'가 무조건 붙는데 그래서 [:-2]로 '0b'를 잘라주고 이진수로 변환한게 '00001' 인경우 그냥 '1'로 변환되니까 앞에 0을 붙여줘야 함. 그래서 zfill 함수를 사용해서 앞에 0을 자동으로 붙여준다.
4. 그리고 1을 #으로 0을 ' '(공백)으로 변환하여 리스트에 담아줌.
출처 -
[프로그래머스] Lv.1 [1차] 비밀지도 (Python)
💻[프로그래머스] Lv.1 [1차] 비밀지도 (Python)
velog.io
728x90
320x100
'💻 하나씩 차곡차곡 > 프로그래머스 (Python)' 카테고리의 다른 글
[프로그래머스/python/Lv1] 소수 만들기 (0) | 2023.12.23 |
---|---|
[프로그래머스/python/Lv1] 두 개 뽑아서 더하기 (0) | 2023.12.22 |
[프로그래머스/python/Lv1] 숫자 문자열과 영단어 (2) | 2023.12.20 |
[프로그래머스/python/Lv1] 예산 (0) | 2023.12.19 |
[프로그래머스/python/Lv1] 3진법 뒤집기 (0) | 2023.12.18 |
뚜루리님의
글이 좋았다면 응원을 보내주세요!
이 글이 도움이 됐다면, 응원 댓글을 써보세요. 블로거에게 지급되는 응원금은 새로운 창작의 큰 힘이 됩니다.
응원 댓글은 만 14세 이상 카카오계정 이용자라면 누구나 편하게 작성, 결제할 수 있습니다.
글 본문, 댓글 목록 등을 통해 응원한 팬과 응원 댓글, 응원금을 강조해 보여줍니다.
응원금은 앱에서는 인앱결제, 웹에서는 카카오페이 및 신용카드로 결제할 수 있습니다.