본문 바로가기
Java/알고리즘

약수의 개수와 덧셈

by 티코딩 2024. 1. 24.

 

간단하다 역시. left = 13, right = 17 일때,

13부터 17까지 돌고, 각 수의 약수를 구하고 그걸 세주고 그게 홀수인지 짝수인지 검증하면 끝.

public int solution(int left, int right) {
       int answer = 0;
        int cnt = 0;
        for(int i = left; i <= right; i++){
            cnt = 0;
            for(int j = i; j >=1; j--){
                if(i % j == 0){
                    cnt++;
                }
            }
            if(cnt % 2 == 0){
                answer += i;
            }else{
                answer -= i;
            }
        }
        return answer;
    }

처음에 헷갈렸던 부분이 cnt++ 해주고 i가 바뀔때마다 cnt를 0으로 초기화해주는걸 깜빡했다. cnt를 0으로 초기화해줘야 각수의 약수가 짝수인지 홀수인지 알 수 있다.

'Java > 알고리즘' 카테고리의 다른 글

부족한 금액 계산하기  (0) 2024.01.26
문자열 내림차순으로 배치하기  (1) 2024.01.25
수박수박수  (1) 2024.01.23
내적, 가운데 글자 가져오기  (1) 2024.01.22
제일 작은 수 제거하기  (0) 2024.01.19