알고리즘🅰/프로그래머스
[프로그래머스] 약수의 합
개발조각
2022. 2. 25. 12:35
728x90
반응형
이번 문제는 쉬운 편이라 빠르게 풀었습니다.
해결방안
function solution(n) {
var answer = 0;
for(let i=1; i<=n; i++){
if(n%i===0) answer+= i;
}
return answer;
}
먼저 for문을 사용해서 1~n까지의 수를 나오게 했습니다.
- for(let i=1; i<=n; i++) : n이 12이면 1~12까지 반복
문제가 " n의 약수를 모두 더한 값을 리턴"하라는 거니까 먼저 약수인 수를 구하기 위해 %를 사용했습니다.
- if(n%i===0) : 만약 n의 약수이면 (n이 12이면 -> 12%1 ~ 12%12 까지 구함)
약수일 경우 (n%i===0 이 true이면) answer에 더해줍니다.
- if(n%i===0) answer+= i; : n이 12이면 1+2+3+4+6+12 = 28이 됩니다.
여기까지 프로그래머스 약수의 합 해결방안에 대해 설명해보았습니다.
728x90
반응형