약수의 합

    [프로그래머스,Level 1] 약수의 합(JAVA 구현)

    - 첫 풀이 및 정답풀이 이 문제의 핵심은 1부터 n까지의 수 중 n과 나누어 떨어지는 약수를 찾는 것이다. 여기서 참고하면 좋은 것이, 1부터 n 까지라고 해서 반복문을 전부 돌 필요가 없다. 왜냐하면, 예제 1번을 예로 들면 1일 때 12는 12로 나누어 떨어지기 때문에 약수이다. 이것을 12까지 반복했을 때 12 역시 12를 1로 나누어 떨어지게 하기 때문에 약수이다. 즉, 1과 12까지를 연산할 필요가 없이, n/2까지 또는 n의 제곱근까지만 반복해주면 연산 횟수를 줄일 수 있다. class Solution { public int solution(int n) { int answer = 0; // 1. 1부터 n의 제곱근까지 반복. for(int i = 1;i