본문 바로가기
  • 밥 하루하루
공돌이/C언어

[프로그래머스/C언어] 약수의 개수와 덧셈

by BobBob 2022. 5. 10.
728x90
반응형

 

문제설명

두 정수 left와 right가 매개변수로 주어집니다. left부터 right까지의 모든 수들 중에서, 약수의 개수가 짝수인 수는 더하고, 약수의 개수가 홀수인 수는 뺀 수를 return 하도록 solution 함수를 완성해주세요.

 

제한사항

1<=left<=right<=1,000

 

#include <stdio.h>
#include <stdbool.h>
#include <stdlib.h>

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

 

풀이

- 약수 구하는 방법

- 나머지 구하는 방법

- 2중 for문

 

 

728x90
반응형

댓글