별의 공부 블로그 🧑🏻‍💻
728x90
728x170

*숫자 N의 약수의 개수 구하기


1부터 N까지 for문을 돌리면서 나누어 떨어지는 수가 있으면(i % N == 0) 카운트를 증가시켜(count++) 최종적으로 카운터를 출력하면 끝.



1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <iostream>
using namespace std;
 
int checkCommonDivisor(int n) {
    int count = 0;
    for (register int i = 1; i <= n; i++) {
        if (n % i == 0) {
            count++;
        }
    }
    return count;
}
 
int main() {
    checkCommonDivisor(10);
 
    return 0;
}



4




$O(n^{\frac{1}{3}})$ 으로 숫자 N의 약수의 개수 구하기


#include <iostream>
using namespace std;
 
int countDivisors(int n) {
    int count = 0;
    for (register int i = 1; i <= sqrt(n); i++) {
        if (n % i == 0) {
            // If divisors are equal,
            // count only one
            if (n / i == i) {
                count++;
            }
            else {  // Otherwise count both
                count = count + 2;
            }
        }
    }
    return count;
}
 
int main() {
    countDivisors(10);
 
    return 0;
}



4




728x90
그리드형(광고전용)
⚠️AdBlock이 감지되었습니다. 원할한 페이지 표시를 위해 AdBlock을 꺼주세요.⚠️


📖 Contents 📖