문제 설명
프로그래머스 모바일은 개인정보 보호를 위해 고지서를 보낼 때 고객들의 전화번호의 일부를 가립니다.
전화번호가 문자열 phone_number로 주어졌을 때, 전화번호의 뒷 4자리를 제외한 나머지 숫자를 전부 *으로 가린 문자열을 리턴하는 함수, solution을 완성해주세요.
제한 조건
phone_number는 길이 4 이상, 20이하인 문자열입니다.
1차 코드
import Foundation
func solution(_ phone_number:String) -> String {
var number = phone_number.map { String($0) }
for i in 0..<number.count-4 {
number[i] = "*"
}
return number.joined()
}
1차 결과
보완점
코드에서 에러가 떠서 제출하기도 전에 고치긴 했지만, 원래 마지막 return값을 String(number)로 내려고 했었다.
그럴거면 애초에 var number를 선언하는 과정에서 map으로 쪼갤 것이 아니라 Array()로 감싸서 배열 형태로 만들고 phonenumber.count로 for문을 돌렸으면 되긴 했을 것 같다. 두 개를 혼동했던 과정에서 작은 실수가 있었는데 결국 각 배열을 문자열로 joined() 해서 해결하긴 했다.
'iOS > Programmers' 카테고리의 다른 글
[Swift] lv.1 콜라 문제 | Programmers (0) | 2024.03.06 |
---|---|
[Swift] lv.1 푸드 파이트 대회 | Programmers (2) | 2024.03.05 |
[Swift] lv.1 가장 가까운 같은 글자 | Programmers (0) | 2024.03.04 |
[Swift] lv.1 없는 숫자 더하기 | Programmers (0) | 2024.03.04 |
[Swift] lv.1 나누어 떨어지는 숫자 배열 | Programmers (0) | 2024.03.04 |