====== 신규 아이디 추천 ====== ===== 풀이 ===== * 기초적인 문자열 연산 문제 * 가독성을 위해서 문제에서 주어진 프로세스를 각각 한줄씩에 나눠서 처리하도록 작성 * 7단계의 프로세스중 어느것도 O(n)을 초과하지 않는다 ===== 코드 ===== """Solution code for "Programmers 72410. 신규 아이디 추천". - Problem link: https://programmers.co.kr/learn/courses/30/lessons/72410 - Solution link: http://www.teferi.net/ps/problems/programmers/72410 """ import re def solution(new_id): new_id = new_id.lower() new_id = ''.join(c for c in new_id if c.isalnum() or c in '-_.') new_id = re.sub(r'\.+', '.', new_id) new_id = new_id.strip('.') new_id = new_id or 'a' new_id = new_id[:15].rstrip('.') new_id = new_id + new_id[-1] * (3 - len(new_id)) return new_id {{tag>프로그래머스 ps:problems:programmers:Level_1}}