约数仅由2,3,5,7组合的数叫做humble number,如丑数列:1,2,3,4,5,6,7,8,9,10,12,14,15,16, 18, 20, 21, 24, 25, 27, ...
问给一个丑数有多少个因子(所有的)
12的因子1,2,3,4,6,12
附每个自然数都可以分解为质因数相乘的形式
这道题先将丑数按2,3,4,7因子分解,然后将分解的数字+1后相乘
# include <stdio.h>
long long div(long long x, int b)
{
int rtn = 0 ;
while (x%b==0)
{
x /= b ;
rtn ++ ;
}
return rtn ;
}
int main ()
{
long long n, mul ;
while (~scanf ("%I64d", &n),n)
{
mul = 1 ;
mul *= (div(n,2)+1) ;
mul *= (div(n,3)+1) ;
mul *= (div(n,5)+1) ;
mul *= (div(n,7)+1) ;
printf ("%I64d\n", mul) ;
}
return 0 ;
}