728x90
📌 문제
정수 배열 numbers가 매개변수로 주어집니다.
numbers의 각 원소에 두배한 원소를 가진 배열을 return하도록 solution 함수를 완성해주세요.
- -10,000 ≤ numbers의 원소 ≤ 10,000
- 1 ≤ numbers의 길이 ≤ 1,000
📌 풀이
무난하게 for문으로 인덱스별 *2를 해주어 구했는데 내가 구한 것보다 훨씬 쉬운 풀이가 많아 기록한다.
📌 코드
1. 내가 푼 풀이
function solution(numbers) {
var answer = [];
for (let i = 0; i < numbers.length; i += 1) {
answer.push(numbers[i] * 2);
}
return answer;
}
2. 다른 분의 풀이
function solution(numbers) {
return numbers.reduce((a, b) => [...a, b * 2], []);
}
reduce를 사용했는데 이해 안돼서 킵해뒀다.
3. 다른 분의 풀이 2
const solution = (numbers) => numbers.map((number) => number * 2)
그냥 map을 써도 되는 거였다. 아직 map이 파이선에서만 익숙해서 잘 안 썼는데 이렇게 쓰는 거였다.
728x90
'⚙️ 코딩테스트' 카테고리의 다른 글
[JavaScript] 프로그래머스 코딩테스트 입문 : 순서쌍의 개수 (0) | 2023.03.21 |
---|---|
[JavaScript] 프로그래머스 코딩테스트 입문 : 배열의 유사도 (0) | 2023.03.21 |
[JavaScript] 프로그래머스 코딩테스트 입문 : 옷가게 할인 받기 (0) | 2023.03.21 |
[JavaScript] 프로그래머스 코딩테스트 입문 : 짝수는 싫어요 (0) | 2023.03.21 |
[JavaScript] 프로그래머스 코딩테스트 입문 : 특정 문자 제거하기 (0) | 2023.03.21 |