DevKim

[Python] 카카오 기출 - 비밀지도 본문

알고리즘 PS

[Python] 카카오 기출 - 비밀지도

on_doing 2021. 2. 2. 21:28
728x90

programmers.co.kr/learn/courses/30/lessons/17681

 

코딩테스트 연습 - [1차] 비밀지도

비밀지도 네오는 평소 프로도가 비상금을 숨겨놓는 장소를 알려줄 비밀지도를 손에 넣었다. 그런데 이 비밀지도는 숫자로 암호화되어 있어 위치를 확인하기 위해서는 암호를 해독해야 한다. 다

programmers.co.kr

[문제 접근]

- 암호화 되어있는 정수배열을 각각 2진수로 바꿔준 뒤, 두개의 배열을 비교해서 조건에 따라 문자열에 추가

 

[알고리즘]

- 완전탐색

 

[코드]

def solution(n, arr1, arr2):
    answer = []
    
    for i in range(n):
        n1=arr1[i]
        n2=arr2[i]
        # n자리수의 이진법으로 바꾸기
        a=''
        b=''
        result=''
        
        while n1!=0:
            a=str(n1%2)+a
            n1=n1//2
        if len(a)<n: #자릿수가 작으면 앞에 0 붙여주기
            a='0'*(n-len(a))+a
        
        while n2!=0:
            b=str(n2%2)+b
            n2=n2//2
        if len(b)<n: #자릿수가 작으면 앞에 0 붙여주기
            b='0'*(n-len(b))+b
            
        #두개 비교하기
        for i in range(n):
            if a[i]=='1' or b[i]=='1':
                result+='#'
            elif a[i]=='0' and b[i]=='0':
                result+=' '
                
        answer.append(result)
        
        
        
    return answer
728x90
Comments