본문 바로가기
BAEKJOON,Programmers,Dacon/Programmers

핸드폰 번호 가리기

by 화영쌤 2023. 2. 26.
728x90

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


TIP) 인덱싱 및 슬라이싱

▷인덱싱(indexing)

인덱싱은 순서가 있는 자료구조나 변수에 숫자 또는 문자열에서 숫자나 문자를 가져오는 것을 말합니다. 순서가 있어야 지정할 수 있기 때문에, 순서가 있는 리스트나 튜플에서 사용할 수 있고, 딕셔너리에서는 사용할 수 없습니다. 인덱싱의 구조는 '변수[]'인데 대괄호 안에 숫자를 사용하여 이용하면 됩니다. 

▷슬라이싱(slicing)

슬라이싱은 순서가 있는 자료 구조 안에 있는 원소들 중 일정한 구간을 자르는 것을 말합니다. 이것 또한 인덱싱과 비슷하게 문자열, 리스트, 튜플에서는 사용할 수 있지만, 딕셔너리에서는 사용할 수 없습니다. 슬라이싱의 구조는 '변수[시작하는 구간:끝나는구간:오프셋]' 입니다. '시작하는구간' 또는 '끝나는 구간'은 생략할 수 있으며, 시작하는구간과 끝나는 구간을  둘다 생략하면 값 전체를 출력하게 됩니다.


여기서는 슬라이싱(slicing)을 이용하여 알고리즘을 짜보겠습니다. 슬라이싱에서 끝나는 구간을 생략해 시작하는 구간부터 끝까지 출력하겠습니다. 


A)

STEP ⓛ 알고리즘 짜기

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

STEP ② 값 출력하기

 

'BAEKJOON,Programmers,Dacon > Programmers' 카테고리의 다른 글

이상한 문자 만들기  (0) 2023.03.06
콜라 문제  (0) 2023.03.04
숫자 짝꿍  (0) 2023.02.27
OX퀴즈  (0) 2023.02.26
서울에서 김서방찾기  (0) 2023.02.22