출처: 프로그래머스 코딩 테스트 연습
https://school.programmers.co.kr/learn/courses/30/lessons/12948
나의 풀이
using System.Linq;
public class Solution {
public string solution(string phone_number) {
var array = phone_number.Select((e, index) => index >= (phone_number.Length - 4) ? e : '*')
.ToArray();
return new string(array);
}
}
Linq 의 리턴값에서 string을 만드는 방법 중 가장 빠른 것은 ToArray()로 리턴 시킨다음 new string() 에 넣는 것.
다른 사람 풀이
public class Solution {
public string solution(string phone_number) {
string answer = phone_number.Substring(phone_number.Length - 4);
answer = answer.PadLeft(phone_number.Length, '*');
return answer;
}
}
PadLeft는 처음봤는데,
문자열.PadLeft(원하는 길이, '채워넣을문자'); 로 호출하면 오른쪽으로 밀어버리고,
왼쪽부터 빈 공간을 '채워넣을 문자'로 넣어준다. 오벌이드로 문자없이 넘기면 공백으로 채워준다.
당연히 오른쪽 버전인 PadRight 도 있다.
'🛡️ 코딩테스트 > 🛡️ 코테 : 프로그래머스' 카테고리의 다른 글
C# 2016년 - 프로그래머스 [Lv.1] (0) | 2023.01.22 |
---|---|
C# 3진법 뒤집기 - 프로그래머스 [Lv.1] (0) | 2023.01.22 |
C# 암호 해독 - 프로그래머스 [Lv.0] 코딩 테스트 입문 (0) | 2022.12.24 |
C# 모음 제거 - 프로그래머스 [Lv.0] 코딩 테스트 입문 (0) | 2022.12.20 |
C# 대문자와 소문자 - 프로그래머스 [Lv.0] 코딩 테스트 입문 (0) | 2022.12.17 |