본문 바로가기

알고리즘

[프로그래머스] #26 핸드폰 번호 가리기 (java)

https://programmers.co.kr/learn/courses/30/lessons/12948

 

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

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

programmers.co.kr

 

문제 설명

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

 

제한 조건

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

 

입출력 예

phone_numberreturn

"01033334444" "*******4444"
"027778888" "*****8888"

 

코드

class Solution {
    public String solution(String phone_number) {
        String answer = "";
        for(int i=0; i<phone_number.length(); i++){
            if(i<phone_number.length()-4){
              answer = answer + "*";
           }
            else{
                answer = answer + phone_number.charAt(i);
            }
        }
        return answer;
    
}
}
class Solution {
    public String solution(String phone_number) {
        String answer = "";
        String star = "";

        for(int i=0; i<phone_number.length()-4; i++){
            answer = answer + "*";
        } 
        
        answer = answer + phone_number.substring(phone_number.length()-4,phone_number.length());
        return answer;
    }
}

풀이

휴대폰 번호 네자리를 남기기 전까지 *로 채운 후

charAt을 이용하여 마지막 네자리를 가져온다.