-
항해 99 - 핸드폰 번호 가리기알고리즘 공부/JavaScript 문제 2023. 4. 16. 14:45
[ 문제 ]
프로그래머스 모바일은 개인정보 보호를 위해 고지서를 보낼 때 고객들의 전화번호의 일부를 가립니다.
전화번호가 문자열 phone_number로 주어졌을 때, 전화번호의 뒷 4자리를 제외한 나머지 숫자를 전부 *으로 가린 문자열을 리턴하는 함수, solution을 완성해주세요.
- phone_number는 길이 4 이상, 20이하인 문자열입니다.
[ Input / Output 예시 ]
Input Output "01033334444" "*******4444" "027778888" "*****8888"
[ 풀이 ]
폰의 전체 길이에서 4를 뺀 만큼 "*"를 반복해준다.
그 후, 뒤의 4자리를 붙혀서 반환한다.
substring이 아닌 slice를 사용한 이유는 음수를 이용해서 더 간편하게 슬라이싱할 수 있고, 사실 python에 익숙한 나에게 더 가까운 메소드이기 때문이다.
[ 코드 ]
// 폰의 전체 길이에서 마지막 4자리를 뺀 만큼 *을 반복하면 된다. const solution1 = function (phone_number) { // 폰 번호의 길이 const phoneLen = phone_number.length; // *를 phoneLen에서 4를 뺀 만큼 반복하고 마지막 4자리 return '*'.repeat(phoneLen-4)+phone_number.slice(-4); } console.log(solution1("027778888")) // 결과 // *****8888
'알고리즘 공부 > JavaScript 문제' 카테고리의 다른 글
항해 99 - x만큼 간격이 있는 n개의 숫자 (1) 2023.04.16 항해 99 - 행렬의 덧셈 (1) 2023.04.16 항해 99 - 평균 구하기 (0) 2023.04.15 항해 99 - 음양 더하기 (0) 2023.04.15 항해 99 - 문자열을 정수로 바꾸기 (0) 2023.04.15