Description
Output the number of total factors of an integer.
Input
There are several lines. And each line contains a positive number N (1<=N<=9999999999999999).
Output
Output the number of total factors for each N.
For example,
Input
12
20
Output
6
6
Because 1, 2, 3, 4, 6, 12 are factors of 12.
1,2,4,5,10,20 are are factors of 20.
Sample Input
12
20
Sample Output
6
6
HINT
#include <stdio.h>
#include <math.h>
int main()
{
long int n, i,sq;
int fac=0;
while (scanf("%ld",&n)!=EOF)
{ sq=sqrt(n);
for(i=1;i<=sq;i++)
{
if(n%i==0)
fac++;
}
fac*=2;
float sqr=sq;
if(sqr==sqrt(n))
fac--;
printf("%d\n",fac);
fac=0;
}
return 0;
}
本文介绍了一种计算任意正整数因子总数的有效算法。通过输入一个正整数N(1<=N<=9999999999999999),该算法能快速输出N的所有因子数量。例如,对于输入12和20,其因子数目分别为6。
1680

被折叠的 条评论
为什么被折叠?



