[Algorithm/Python][프로그래머스] [1차] 비밀지도

동글이·2022년 10월 31일
0

Algorithm

목록 보기
26/33

[프로그래머스][1차] 비밀지도

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

- 문제 접근

  • bin() 이용해서 10진수 -> 2진수로 변경
  • 하고 ( | ) 로 묶어서 or 로 해서 두개 한번에 결과 가져옴
  • .zfill() 로 앞에 0을 채워주게 함

- 처음 코드

def solution(n, arr1, arr2):
    result = []
    for i in range(n):
        a = bin(arr1[i])[2:]
        b = bin(arr2[i])[2:]
        if len(a)<n:
            while n-len(a):
                a = "0" + a
        if len(b)<n:
            while n-len(b):
                b = "0" + b
        save = ""
        for j in range(n):
            if a[j] == "1" or b[j] == "1":
                save += "#"
            else:
                save += " "
        result.append(save)
    return result

- 수정한 코드

def solution(n, arr1, arr2):
    result = []
    for i in range(n):
        tmp = bin(arr1[i] | arr2[i])

        tmp = tmp[2:].zfill(n)
        tmp = tmp.replace('1', '#')
        tmp = tmp.replace('0', ' ')
        result.append(tmp)
    return result

✔ 한 일 점검


✔ 내일 목표

  • 백준 or 프로그래머스 - 2문제 이상
  • 신용 과제
  • 우코테, 싸피
  • 졸작

✔ 주저리

profile
기죽지 않는 개발자

0개의 댓글