[1차] 비밀지도_프로그래머스_파이썬

  • 사전지식
    • bin
    • rjust
  • bin은 이진법으로 바꿔줍니다
bin(42)
'0b101010'

or을 통해서 0 또는 1이면 1을 반환해줍니다.

print(bin(31)[2:])
print(bin(14)[2:])
11111
1110

5개의 1을 반환합니다.

bin(31|14)[2:]
'11111'
  • rjust는 n과 입력할값을 입력하면 입력한 값을 길이가 n이 될 때 까지 앞에 채워줍니다.

길이가 3이 될 때 까지 0을 채워줍니다

"2".rjust(3,"0")
'002'
"123".rjust(10,'6')
'6666666123'
  • 다른 사람의 풀이
def solution(n, arr1, arr2):
    answer = []
    for i,j in zip(arr1,arr2):
        a12 = str(bin(i|j)[2:])
        a12=a12.rjust(n,'0') #a12 = '0' * (n - len(a)) + a  앞에 아무수가 없는 경우는 공백을 나타내므로 0을 추가해줍니다.
        a12=a12.replace('1','#')
        a12=a12.replace('0',' ')
        answer.append(a12)
    return answer

solution(6,[46, 33, 33 ,22, 31, 50], [27 ,56, 19, 14, 14, 10] )

['######', '###  #', '##  ##', ' #### ', ' #####', '### # ']

Comments