注意事项:无。

代码:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
int cntap, ap[MAXsqrtx + 10];
void evaap(int x) {
cntap = 0;
int sqrtx = ceil(sqrt(x));
for (int i = 1; i < sqrtx; ++i) {
if (x % i == 0) {
ap[++cntap] = i;
ap[++cntap] = x / i;
}
}
if (sqrtx * sqrtx == x) {
ap[++cntap] = sqrtx;
}
}