728x90
🔥 Programmers Lv.1 : x만큼 간격이 있는 n개의 숫자
🔍 문제 : " 함수 solution은 정수 x와 자연수 n을 입력 받아, x부터 시작해 x씩 증가하는 숫자를 n개 지니는 리스트를 리턴해야 합니다. 다음 제한 조건을 보고, 조건을 만족하는 함수, solution을 완성해주세요. "
📎 조건 :
∙ x는 -10000000 이상, 10000000 이하인 정수입니다.
∙ n은 1000 이하인 자연수입니다.
∙ x는 -10000000 이상, 10000000 이하인 정수입니다.
∙ n은 1000 이하인 자연수입니다.
👉🏻 My answer
function solution(x, n) {
var answer = [];
let plus = x;
for(let i=0; i<n; i++){
answer.push(x) //x값을 처음으로 넣어주어햐 하므로 뒤에 식보다 먼저 옴
x += plus
}
return answer;
}
: n번만큼 반복하여 x에서 x만큼 더한 값을 배열에 넣어주어야 하기 때문에 for문과 push메서드를 사용해주었습니다.
👉🏻 Another ways
function solution(x, n) {
return Array(n).fill(x).map((v, i) => (i + 1) * v)
}
: 배열에 n만큼 x로 채운 후 요소의 값을 인덱스+1 * 요소의 값만큼 해준 값으로 반환하는 것입니다.
function hide_numbers(s) {
return s.replace(/\d(?=\d{4})/g, "*");
}
: /\d(?=\d{4})/g => /정규식/, g: 전체, \d: 숫자[0-9]랑 같음, {n}: 앞의 식이 n번 반복, x(?=y) : y뒤에 있는 x만 대응, \d(?=\d{4}) : 뒤에 달아 숫자 4개가 있다면 그 앞(x)부분
: 정규식으로 쓰니 한 줄이면 충분하군요? 멋있다.
: 정규식으로 쓰니 한 줄이면 충분하군요? 멋있다.
'알고리즘 도장깨기' 카테고리의 다른 글
프로그래머스 Lv.1 "내적" (2) | 2022.11.15 |
---|---|
프로그래머스 Lv.1 "가운데 글자 가져오기" (2) | 2022.11.15 |
프로그래머스 Lv.1 "핸드폰 번호 가리기" (1) | 2022.11.14 |
프로그래머스 Lv.1 "문자열 내 p와 y의 개수" (1) | 2022.11.14 |
프로그래머스 Lv.1 "같은 숫자는 싫어" (2) | 2022.11.11 |
댓글