Swift랑 친해지기/programmers 풀기

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

데브킹덕 2022. 8. 4. 17:00

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

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

내 풀이 방법

 

1. result 빈 문자열 변수를 선언 및 초기화 해줌 

2. phonenumber의 글자갯수 (.count)에서 4자리를 제외하고 나머지를 *로 바꿔야 함으로 범위를 다음과 같이 지정함

0..<phone_number.count - 4

 ex phone_number = "123456789"

범위 0..< 5 

*****6789

3. suffix함수를 이용해 끝에서 4자리부터 끝까지의 하위 시퀀스 4자리를 반환한뒤 result에 더함  

 

suffix(from:)

지정된 위치에서 컬렉션 끝까지의 하위 시퀀스를 반환하는 함수임

시간복잡도 O(1)

 

코드 

func solution(_ phone_number:String) -> String {
    var result = ""
    for _ in 0..<phone_number.count - 4 {
        result += "*"
    }
    result += phone_number.suffix(4)
    return result
}