본문 바로가기
코딩 테스트

[프로그래머스] 신규 아이디추천 (Python)

by zoodi 2021. 3. 29.
728x90

1. 문제

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

 

코딩테스트 연습 - 신규 아이디 추천

카카오에 입사한 신입 개발자 네오는 "카카오계정개발팀"에 배치되어, 카카오 서비스에 가입하는 유저들의 아이디를 생성하는 업무를 담당하게 되었습니다. "네오"에게 주어진 첫 업무는 새로

programmers.co.kr

2. 풀이

단계별로 조건에 맞게 구현하면 되는 문제.

step 4 에서 길이가 0이 되는경우를 고려해주어야 한다.

 

3. 코드

def solution(new_id):
    answer = ''
   #1단계
    new_id = new_id.lower()
    #2단계

    for x in new_id:
        if x.isdigit() or x.isalpha() or x == '-' or x == '_' or x == '.':
            answer += x


    #3단계
    while '..' in answer:
        answer = answer.replace('..', '.')

    #step 4
    if answer[0] == '.':
        answer = answer[1:] if len(answer)>1 else '.'
    if answer[-1] == '.':
        answer = answer[:-1]

    #step 5
    if len(answer)==0:
        answer = 'a'
    #step 6
    if len(answer)>=16:
        answer = answer[:15]
    if answer[-1] == '.':
        answer = answer[:-1]
    #step 7
    if len(answer) < 3:
        while len(answer) != 3:
            answer += answer[-1]

    return answer
728x90

댓글