2018 KAKAO BLIND RECRUITMENT 비밀지도 (lv1)
7672 단어 KAKAO 블라인드 테스트psKAKAO 블라인드 테스트
정답 코드 1
def solution(n, arr1, arr2):
answer = []
for i in range(n):
temp1 = list(map(int, list(format(arr1[i], 'b'))))
temp2 = list(map(int, list(format(arr2[i], 'b'))))
while len(temp1) < n:
temp1.insert(0, 0)
while len(temp2) < n:
temp2.insert(0, 0)
for j in range(n):
if temp2[j] == 1 or temp1[j] == 1:
temp1[j] = '#'
else:
temp1[j] = ' '
answer.append("".join(temp1))
return answer
정답 코드 2
def solution(n, arr1, arr2):
answer = []
for i, j in zip(arr1, arr2): # for문의 iterator를 pair로 받음
a12 = str(bin(i | j)[2:]) #bin 함수는 'ob + 2진수 변환 수'를 return 해서 2:부터 받아 ob를 제거
#(i | j)는 i랑 j를 이진 변환하고, 같은 자리에 모두 0이 오면 0, 하나라도 1이 있으면 1로
a12 = a12.rjust(n, '0') # 오른쪽 정렬 후 -> 문자열.rjust(전체 자리 숫자, 공백이 있을 경우 채울 텍스트)
a12 = a12.replace('1', '#')
a12 = a12.replace('0', ' ')
answer.append(a12)
return answer
배운 점
1. 2진수 비트연산자
2. zip 함수
Author And Source
이 문제에 관하여(2018 KAKAO BLIND RECRUITMENT 비밀지도 (lv1)), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@yibangwon/2018-KAKAO-BLIND-RECRUITMENT-비밀지도-lv1저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)