프로그래머스 풀이/level1
[Programmers] level 1) 문제 '약수의 합' 풀이
진기명기
2023. 5. 3. 10:52
🫠 Programmers (level 1) 👉🏻 문제 3번 (약수의 합)
✏️ 문제 설명
정수 n을 입력받아 n의 약수를 모두 더한 값을 리턴하는 함수, solution을 완성해 주세요.
✏️ 제한 사항
n은 0 이상 3000 이하인 정수입니다.
✏️ 입출력 예
n return
12 28
5 6
function solution(n) {
let arr = new Array(n).fill(1).map((item, index) => item + index)
return arr.filter((item) => n % item === 0).reduce((acc, item) => acc + item, 0)
}
✅ 매개변수로 받는 n만큼 배열을 만들고(1 ~ n까지), 배열의 filter로 약수인 것만 반환하였다.
✅ 반환한 값을 바로 reduce로 모두 더해주었다.