배고픈 개발자 이야기
[2021 KAKAO BLIND] 신규 아이디 추천 본문
728x90
단순 구현 문제이다.
문제 지문에 맞게 코드를 구현하기만 하면 된다.
def solution(new_id):
answer = ''
for x in new_id:
if x.isupper():
answer += x.lower()
else:
answer += x
answer, new_id = '', answer
for x in new_id:
if not 96 < ord(x) < 123:
if not 47 < ord(x) < 58:
if not ord(x) in [95, 45, 46]:
continue
answer += x
answer, new_id = '', answer
i = 0
while i < len(new_id):
answer += new_id[i]
if ord(new_id[i]) == 46:
i += 1
if i >= len(new_id):
break
while ord(new_id[i]) == 46:
i += 1
if i >= len(new_id):
break
continue
i += 1
if ord(answer[0]) == 46:
answer = answer[1:]
if len(answer) != 0 and ord(answer[len(answer) - 1]) == 46:
answer = answer[:len(answer)-1]
if not answer:
answer = 'a'
if len(answer) >= 16:
answer = answer[:15]
if ord(answer[len(answer) - 1]) == 46:
answer = answer[:len(answer)-1]
while len(answer) < 3:
answer += answer[len(answer)-1]
return answer
'알고리즘 문제 > PROGRAMMERS' 카테고리의 다른 글
[ 연습문제 ] 롤케이크 자르기 (0) | 2022.11.09 |
---|---|
[그래프] 가장 먼 노드 (0) | 2022.11.09 |
[2020 kakao blind] 괄호변환 (0) | 2021.08.12 |
[2018 kakao blind] 뉴스클러스터링 (0) | 2021.08.10 |
[2021 카카오 인턴] 수식 최대화 (0) | 2021.08.07 |
Comments