반응형

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

 

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

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

programmers.co.kr

import re

def solution(new_id):
    new_id = re.sub(r'[~!@#$%^&*()=+\[{\]}:?,<>/]', '', new_id.lower())
    new_id = re.sub(r'\.+', '.', new_id)
    new_id = re.sub(r'^\.|\.$', '', new_id)
    if new_id == '': new_id = 'a'
    if len(new_id) > 15: new_id = new_id[:15]
    new_id = re.sub(r'^\.|\.$', '', new_id)
    if len(new_id) < 3: new_id += new_id[-1] * (3 - len(new_id))
    
    return new_id

→ 문제에 주어진 처리 순서 그대로 정규표현식으로 표현하면 됨

반응형

'IT study > 알고리즘 문제 풀이' 카테고리의 다른 글

순위 검색  (0) 2021.03.09
메뉴 리뉴얼  (0) 2021.03.08
가사 검색  (0) 2021.03.01
블록 이동하기  (0) 2021.02.28
외벽 점검  (0) 2021.02.26

+ Recent posts