사용 언어 - Python3
문제 - 신규 아이디 추천
정답
구현 (정답 맞춘 여부 O)
2단계에서 i.isalpha() or i.isdigit() 사용하는 게 더 좋을 것 같다
리스트 인덱싱을 할 땐 len(answer)를 생각하기!
def solution(new_id):
answer = ''
# 1단계
new_id = new_id.lower()
# 2단계
alpha = 'abcdefghijklmnopqrstuvwxyz'
num = '0123456789'
for i in new_id:
if i in alpha:
answer += i
elif i in num:
answer += i
elif i in ['-','_','.']:
answer += i
# 3단계
while '..' in answer:
answer = answer.replace('..','.')
# 4단계
if answer[0] == '.':
answer = answer[1:] if len(answer) > 1 else '.'
if answer[-1] == '.':
answer = answer[:-1]
# 5단계
if answer == '':
answer = 'a'
# 6단계
if len(answer) >= 16:
answer = answer[:15]
if answer[-1] == '.':
answer = answer[0:-1]
# 7단계
while len(answer) < 3:
answer += answer[-1]
return answer
레퍼런스
- 정답 깃허브
'Algorithm > 구현' 카테고리의 다른 글
[프로그래머스 lv 1] [1차] 비밀 지도 (0) | 2023.05.30 |
---|---|
[프로그래머스 lv 1] [1차] 다트 게임 (1) | 2023.05.30 |
[프로그래머스 lv 1] 실패율 (0) | 2023.05.28 |
[프로그래머스 lv 1] 크레인 인형뽑기 게임 (0) | 2023.05.23 |
[프로그래머스 lv 1] 키패드 누르기 (0) | 2023.05.22 |
댓글