본문 바로가기
코딩테스트 문제풀이/Programmers

[KAKAO] 2021 KAKAO 채용연계형 인턴십

by merona99 2021. 7. 20.
반응형

2021 카카오 채용연계형 인턴십

2021-07-20 & 2021-07-27   알고리즘스터디(오후7시~9시)

 

 

카카오 공식해설

https://tech.kakao.com/2021/07/08/2021-%ec%b9%b4%ec%b9%b4%ec%98%a4-%ec%9d%b8%ed%84%b4%ec%8b%ad-for-tech-developers-%ec%bd%94%eb%94%a9-%ed%85%8c%ec%8a%a4%ed%8a%b8-%ed%95%b4%ec%84%a4/

 

2021 카카오 인턴십 for Tech developers 코딩 테스트 해설

2021년 카카오의 여름 인턴십의 첫 번째 관문인 코딩 테스트가 지난 2021년 5월 8일에 4시간에 걸쳐 진행되었습니다. 이번 인턴 코딩 테스트에서는 5문제가 출제되었습니다. 이전과 동일하게 쉬운

tech.kakao.com

 

 

 

문제1) 숫자 문자열과 영단어(★)

풀이방식

한글로된 숫자를 넣은 배열을 선언후 문자열을 돌며 매칭되는지 비교

 

  • num_arr 배열을 선언 후 한글로된 숫자값을 넣어줌
  • 문자열(s)만큼 반복문을 돌려서 확인 & 반복문에서 사용할 빈문자열(arr)을 선언
  • 만약, 문자(i)가 숫자로된 문자이면(.isdigit) answer에 바로 문자를 넣어줌
  • 아닐경우, arr에 문자를 더해주고 arr에 있는 문자가 num_arr에 매칭이 되는것이 있는지 확인
  • 매칭이 된다면 answer에 해당 인덱스를 더해주고 arr은 빈문자열로 재정의
  • answer은 문자열이므로 숫자로 바꾸고 출력

 

 

 

소스코드

 

def solution(s):
    answer = ''
    num_arr = ['zero','one','two','three','four','five','six','seven','eight','nine']
    
    arr = ''
    for i in s:
        if i.isdigit():
            answer+=i
        else:
            arr+=str(i)
            if arr in num_arr:
                answer+=str(num_arr.index(arr))
                arr=''
                
    return int(answer)

 

 

 

문제2) 거리두기 확인하기(★★)

 

 

 

반응형

댓글