1 개요[ | ]
- 함수 countDivisors()
- 약수의 개수를 구하는 함수
2 같이 보기[ | ]
3 C++[ | ]

C++
CPU
0.4s
MEM
53M
0.4s
Copy
#include <iostream>
#include <cmath>
using namespace std;
int countDivisors(int n) {
int cnt = 0;
for (int i = 1; i <= sqrt(n); i++) {
if (n % i != 0) continue;
if (n / i == i) cnt++;
else cnt += 2;
}
return cnt;
}
int main() {
cout << countDivisors(-1) << endl; // 0
cout << countDivisors(0) << endl; // 0
cout << countDivisors(1) << endl; // 1: 1
cout << countDivisors(2) << endl; // 2: 1, 2
cout << countDivisors(7) << endl; // 2: 1, 7
cout << countDivisors(59) << endl; // 2: 1, 59
cout << countDivisors(60) << endl; // 12: 1, 2, 3, 4, 5, 6, 10, 12, 15, 20, 30, 60
}
0 0 1 2 2 2 12