programmers.co.kr/learn/courses/30/lessons/72410
노가다, 기초 점검에 좋음
def solution(new_id):
char = list(new_id)
# 1단계
for i, c in enumerate(char) :
if ord(c) >= ord("A") and ord(c) <= ord("Z") :
char[i] = chr(ord(new_id[i])+32)
# 2단계
for i,c in enumerate(char) :
if ( ord(c) < ord("a") or ord(c) > ord("z")) and c not in "1234567890" and c not in '-_.' :
char[i] = ""
#3단계
new_id = "".join(char)
while ".." in new_id:
new_id = new_id.replace('..','.')
#4단계
char = list(new_id)
if len(char) >= 1 :
if char[0] == "." :del char[0]
if len(char) >= 1 :
if char[-1] == "." : del char[-1]
#5단계
if len(char) == 0 : char.append("a")
#6단계
if len(char) > 15 : char = char[:15]
if char[-1] == "." : char = char[:-1]
#7단계
if len(char) <= 2 :
while len(char) < 3 :
char.append(char[-1])
return "".join(char)
정확성 테스트
테스트 1 〉 | 통과 (0.01ms, 10.3MB) |
테스트 2 〉 | 통과 (0.01ms, 10.1MB) |
테스트 3 〉 | 통과 (0.02ms, 10.2MB) |
테스트 4 〉 | 통과 (0.02ms, 10.3MB) |
테스트 5 〉 | 통과 (0.02ms, 10.3MB) |
테스트 6 〉 | 통과 (0.02ms, 10.2MB) |
테스트 7 〉 | 통과 (0.02ms, 10.3MB) |
테스트 8 〉 | 통과 (0.02ms, 10.3MB) |
테스트 9 〉 | 통과 (0.01ms, 10.2MB) |
테스트 10 〉 | 통과 (0.01ms, 10.2MB) |
테스트 11 〉 | 통과 (0.02ms, 10.2MB) |
테스트 12 〉 | 통과 (0.04ms, 10.2MB) |
테스트 13 〉 | 통과 (0.03ms, 10.3MB) |
테스트 14 〉 | 통과 (0.02ms, 10.2MB) |
테스트 15 〉 | 통과 (0.03ms, 10.2MB) |
테스트 16 〉 | 통과 (0.07ms, 10.3MB) |
테스트 17 〉 | 통과 (0.17ms, 10.3MB) |
테스트 18 〉 | 통과 (0.29ms, 10.2MB) |
테스트 19 〉 | 통과 (0.53ms, 10.2MB) |
테스트 20 〉 | 통과 (0.53ms, 10.3MB) |
테스트 21 〉 | 통과 (0.57ms, 10.3MB) |
테스트 22 〉 | 통과 (0.55ms, 10.3MB) |
테스트 23 〉 | 통과 (0.45ms, 10.3MB) |
테스트 24 〉 | 통과 (0.60ms, 10.2MB) |
테스트 25 〉 | 통과 (0.43ms, 10.1MB) |
테스트 26 〉 | 통과 (0.44ms, 10.2MB) |
채점 결과
정확성: 100.0
합계: 100.0 / 100.0
'코테' 카테고리의 다른 글
[프로그래머스] <가운데 글자 가져오기> 파이썬 (0) | 2021.02.08 |
---|---|
[프로그래머스] <2016년> 파이썬 (0) | 2021.02.08 |
[프로그래머스] <두 개 뽑아서 더하기> 파이썬 (0) | 2021.02.07 |
[프로그래머스] <크레인 인형뽑기 게임> 파이썬 (0) | 2021.02.07 |
[프로그래머스] <여행경로> 파이썬 (0) | 2021.02.07 |