본문 바로가기
Kotlin(프로그래머스)/Level 1

[프로그래머스/Kotlin] 핸드폰 번호 가리기

by Yuno. 2022. 3. 28.
728x90

문제 링크 -> https://programmers.co.kr/learn/courses/30/lessons/12948

 

코딩테스트 연습 - 핸드폰 번호 가리기

프로그래머스 모바일은 개인정보 보호를 위해 고지서를 보낼 때 고객들의 전화번호의 일부를 가립니다. 전화번호가 문자열 phone_number로 주어졌을 때, 전화번호의 뒷 4자리를 제외한 나머지 숫자

programmers.co.kr

문제 설명

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

제한 조건
  • phone_number는 길이 4 이상, 20이하인 문자열입니다.

------------------------------------------------------------풀이------------------------------------------------------------------

1. string을 mutableList로 변환
2. 뒤 4자리를 제외한 나머지 앞자리를 "*"로 set
3. 구분자없이 string 변환

* 원래는 substring으로 4자리 제외하고 반복문 한번 돌려서 substring한 길이만큼 새로운 string 만들고 replace하려 했는데 아래 코드가 시간이 더 짧을 것 같아서 이렇게 했습니다. 정확한 시간을 계산해 보려면 joinToString 어떤 방식으로 실행되는지 replace랑 비교해봐야 할 것 같네요 

class Solution {
    fun solution(phone_number: String): String {
        var answer = phone_number.toMutableList()
        for(i in 0..answer.size-5){
            answer.set(i, '*')
        }
        return answer.joinToString("")
    }
}

------------------------------------------------------------결과------------------------------------------------------------------

 

 

 

 

 

 

- 문제에 대한 질문 댓글 환영!
- 중간에 잘못된 부분이 있다면 댓글로 남겨주세요. 수정하겠습니다.

728x90

댓글