본문 바로가기
프로그래머스

프로그래머스 | Lv.1 약수의 합

by 코딩하자9 2022. 11. 1.
728x90

코딩 테스트 02
프로그래머스 코딩테스트 연습 문제지

코딩 영역

Lv.1
성명
수험 번호 -
약수의 합 02. 정수 n을 입력받아 n의 약수를 모두 더한 값을 리턴하는 함수, solution을 완성해주세요. * n은 0 이상 3000이하인 정수입니다.
ex) 12의 약수는 1, 2, 3, 4, 6, 12입니다. 이를 모두 더하면 28입니다.
function solution(n) {
    let answer = 0;
    for(let i = 1; i <= n; i++){
        if(n%i === 0) answer += i;
    }
    return answer
}
나의 풀이 for문을 활용하여 n의 약수일 경우 answer 값에 더해지도록 만들었습니다.
function solution(n, a=0, b=0) {
    return n<=a/2?b:solution(n,a+1,b+=n%a?0:a);
}
다른 풀이 저도 이 풀이를 이해하는 날이 오겠죠 ?

댓글


It's cording time

코딩 여기서 정리하고 배워보자구 :9

광고 준비중입니다.