2018 KAKAO BLIND RECRUITMENT > [1차] 비밀지도
코딩테스트 연습 - [1차] 비밀지도
비밀지도 네오는 평소 프로도가 비상금을 숨겨놓는 장소를 알려줄 비밀지도를 손에 넣었다. 그런데 이 비밀지도는 숫자로 암호화되어 있어 위치를 확인하기 위해서는 암호를 해독해야 한다. 다
programmers.co.kr
나의 풀이
- 비트연산자 ㅣ 사용
- 이진수 변환 함수 bin() --> 출력값 0bXXX (str형)
- replace 함수 사용
def solution(n, arr1, arr2):
answer = []
for i in range(n):
bin_str = bin(arr1[i] | arr2[i]).replace('b', '0')[-n:]
answer.append(((n-len(bin_str))*'#'+bin_str).replace('1', '#').replace('0', ' '))
return answer
다른 사람의 풀이
- rjust 함수
문자열.rjust(전체 자리 숫자, 공백이 있을 경우 공백을 채울 텍스트)
- zip으로 묶어서 for문 사용
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=a12.replace('1','#')
a12=a12.replace('0',' ')
answer.append(a12)
return answer
'study > 알고리즘' 카테고리의 다른 글
[알고리즘/프로그래머스] 전력망을 둘로 나누기 (0) | 2021.12.23 |
---|---|
[알고리즘/프로그래머스] 교점에 별 만들기 (0) | 2021.12.21 |
[알고리즘/프로그래머스] 튜플 (0) | 2021.12.16 |
[알고리즘/프로그래머스] 숫자 문자열과 영단어 (0) | 2021.12.13 |
[알고리즘/백준] 11724번 연결 요소의 개수 (0) | 2021.12.10 |