728x90
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
간단한 구현문제.
def solution(n, arr1, arr2):
answer_list = [] # 정답을 저장하는 리스트
length = len(arr1) # 행, 열 개수
for i in range(length):
answer = "" # 각 행에서의 암호화된 배열
row1 = arr1[i]
row2 = arr2[i]
j = 2 ** (length - 1) # 2^n-1 ~ 1까지 확인한다.
while j >= 1:
if row1 // j == 1 or row2 // j == 1: # 지도1, 지도 2 둘중 하나라도 벽이라면
answer += "#" # answer에 # 추가
if row1 // j == 1: # 만약 나눠진다면, row값을 나눈 나머지로 바꾼다.
row1 %= j
if row2 // j == 1:
row2 %= j
else: # 지도 1, 지도 2 둘다 벽이 아니라면 공백 추가
answer += " "
j //= 2
answer_list.append(answer)
return answer_list
728x90