-
[Programmers] JavaScript 알고리즘 | Lv.0 조건에 맞게 수열 변환하기 3► JS Algorithm/Programmers 2023. 12. 15. 12:39반응형
🔒 문제 설명
정수 배열 arr와 자연수 k가 주어집니다.
만약 k가 홀수라면 arr의 모든 원소에 k를 곱하고, k가 짝수라면 arr의 모든 원소에 k를 더합니다.
이러한 변환을 마친 후의 arr를 return 하는 solution 함수를 완성해 주세요.
🔒 제한사항
- 1 ≤ arr의 길이 ≤ 1,000,000
- 1 ≤ arr의 원소의 값 ≤ 100
- 1 ≤ k ≤ 100
🔒 입출력 예
arr k result [1, 2, 3, 100, 99, 98] 3 [3, 6, 9, 300, 297, 294] [1, 2, 3, 100, 99, 98] 2 [3, 4, 5, 102, 101, 100]
🔒 입출력 예 설명
입출력 예 #1
- 주어진 k인 3은 홀수이므로, 전체 배열에 3을 곱합니다. 따라서 [3, 6, 9, 300, 297, 294]을 return 합니다.
입출력 예 #2
- 주어진 k인 2는 짝수이므로, 전체 배열에 2를 더합니다. 따라서 [3, 4, 5, 102, 101, 100]을 return 합니다.
🔐 solution of mine
map()
const solution = (arr, k) => console.log(k % 2 ? arr.map((v) => v * k) : arr.map((v) => v + k)); solution([1, 2, 3, 100, 99, 98], 3); // expected output: [3, 6, 9, 300, 297, 294] solution([1, 2, 3, 100, 99, 98], 2); // expected output: [3, 4, 5, 102, 101, 100]
🔐 solution of others
map()
const solution = (arr, k) => console.log(arr.map((v) => (k % 2 ? v * k : v + k))); solution([1, 2, 3, 100, 99, 98], 3); // expected output: [3, 6, 9, 300, 297, 294] solution([1, 2, 3, 100, 99, 98], 2); // expected output: [3, 4, 5, 102, 101, 100]
나는 map 안에서 조건을 돌렸는데,
여기서는 map 안에 조건문을 돌려서 코드가 짧아졌다
반응형'► JS Algorithm > Programmers' 카테고리의 다른 글
[Programmers] JavaScript 알고리즘 | Lv.0 n의 배수 고르기 (1) 2023.12.18 [Programmers] JavaScript 알고리즘 | Lv.0 카운트 다운 (0) 2023.12.15 [React Native_에러해결] xcode 에러해결 '►Start the active scheme' (0) 2023.12.15 [Programmers] JavaScript 알고리즘 | Lv.0 배열에서 문자열 대소문자 변환하기 (0) 2023.12.14 [Programmers] JavaScript 알고리즘 | Lv.0 더 크게 합치기 (0) 2023.12.14 - 1 ≤ arr의 길이 ≤ 1,000,000