사용자 도구

사이트 도구


ps:problems:programmers:72410

신규 아이디 추천

ps
링크https://programmers.co.kr/learn/courses/30/lessons/72410
출처프로그래머스
문제 번호72410
문제명신규 아이디 추천
레벨Level 1
분류

기초

시간복잡도O(n)
인풋사이즈n<=1000
사용한 언어Python
해결날짜2021/01/25
출처2021 KAKAO BLIND RECRUITMENT

풀이

  • 기초적인 문자열 연산 문제
  • 가독성을 위해서 문제에서 주어진 프로세스를 각각 한줄씩에 나눠서 처리하도록 작성
  • 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

토론

댓글을 입력하세요:
M B R B H
 
ps/problems/programmers/72410.txt · 마지막으로 수정됨: 2021/01/30 14:21 저자 teferi