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

[level 1] 약수의 합

by AsCE_hyunseung 2018. 8. 21.
1
2
3
4
5
6
7
8
9
10
11
12
13
class Solution {
  public int solution(int n) {
      int answer = 0;
    for(int i=1;i<=n/2;i++)
    {
        if(n%i==0)
        {
            answer+=i;
        }
    }
      return answer+n;
  }
}
cs


문제 설명

자연수 n을 입력받아 n의 약수를 모두 더한 값을 리턴하는 함수, solution을 완성해주세요.


제한 사항

n은 0 이상 3000이하인 자연수입니다.


설명이 필요 없을 정도로 쉬운 문제였다.

반복문에서 n/2를 해준 이유는 n/2보다 큰 약수는 없기 때문이다. 그래서 return할때 n을 더해주었다.