본문 바로가기

머리맞대는이야기/프로그래머스 (JAVA)

[연습문제] 약수의 합

반응형

출처: 프로그래머스

 

문제 설명

 

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

 

제한 사항

  • n은 0 이상 3000이하인 정수입니다.

입출력 예

n  |  return

12 28
5 6

 

입출력 예 설명

입출력 예 #1
12의 약수는 1, 2, 3, 4, 6, 12입니다. 이를 모두 더하면 28입니다.

입출력 예 #2
5의 약수는 1, 5입니다. 이를 모두 더하면 6입니다.

 

풀이과정

주어진 n에 대하여 1~3000 범위 자연수 하나씩 다 나눠보고 몫인거 찾아서 다 더하면 된다. 포스팅 안해도 될 정도로 쉽다.

 


작성 코드

 

class Solution {
    public int solution(int n) {
        int answer = 0;
        for(int i=1;i<=n;i++){
            if(n%i==0){
                answer+=i;
            }
        }
        return answer;
    }
}

 

memo

지금 어려운 문제도 이렇게 쉽게 보이는 날까지 해야겠다...

반응형