본문 바로가기
알고리즘/프로그래머스

프로그래머스 약수의 개수와 덧셈 자바 java

by 클로드 2021. 6. 15.
반응형

풀이

매개변수 left에서 right까지 for문으로 만들어 주고

 

약수를 찾기 위해서 for문으로 1부터 ~ N까지 모든 경우의 수로 나누는 방법으로

약수를 찾아내고 count변수에 총개수에 넣어줍니다

 

짝수 홀수를 구분하기 위해서 2로 나누어서 나머지 값이 0이라면 짝수 아니면 홀수로 구분을 합니다

 

코드

class Solution {
    public int solution(int left, int right) {
        int answer = 0;
        int count;

        for (int i = left; i <= right; i++) {
            count = 0;

            for (int j = 1; j <= i; j++) {
                if (i % j == 0) { //약수 찾기
                    count++;
                }
            }


            //약수의 개수가 짝수일때 수를 더하고 홀수일때 수를 뺌
            if (count % 2 == 0) {
                answer += i;
            } else {
                answer -= i;
            }

        }

        //System.out.println(answer);
        
        return answer;
    }
}

 

출처

https://programmers.co.kr/learn/courses/30/lessons/77884

반응형

댓글