본문 바로가기
프로그래머스,백준/알고리즘

[프로그래머스] Level1 - 핸드폰 번호 가리기 (Python)

by z.1nee 2020. 10. 25.
SMALL

문제

프로그래머스 모바일은 개인정보 보호를 위해 고지서를 보낼 때 고객들의 전화번호의 일부를 가립니다.
전화번호가 문자열 phone_number로 주어졌을 때, 전화번호의 뒷 4자리를 제외한 나머지 숫자를 전부 *으로 가린 문자열을 리턴하는 함수, solution을 완성해주세요.제한 조건

  • s는 길이 4 이상, 20이하인 문자열입니다.

입출력 예

phone_number return
01033334444 *******4444
027778888 *****8888

알고리즘

1. 뒤 4자리 숫자만 슬라이싱해 리스트에 저장

2. * 을 phone_number 의 길이에서 4를 뺀만큼 반복시켜 슬라이싱한 4자리 숫자와 더해 출력

 

 

필요 함수 정리

- 슬라이싱

- 문자열은 * 가능

 

 

내 소스 코드

def solution(phone_number):
    number =  phone_number[-4:]
    answer = '*' * (len(phone_number)-4) + number
    return answer
   

 

결과 

 

 

다른 사람 소스 코드

def solution(phone_number):
    return "*"*(len(phone_number)-4) + phone_number[-4:]

 

 

알고리즘은 동일 내 소스를 축약한정도?

 

 

 

 

댓글