一点小东西
//求n的阶乘转成10进制表示,末尾有多少个0的代码。
int f(int n)
{
int k = 5;
int r = 0;
while( n >= k)
{
r += n/k;
k *= 5;
}
return r;
}
然后这个还可以扩展为s进制的情况,这个等我扩出来了再写^_^
算了,先写点初步的吧
就是对于s进制来说,如果s=a^p*b(并且a^p小于b) 这里a,b是不同的素数,那么上式中的k可以用b代替相应的,5的位置也要换上b的值^_^
int f(int n)
{
int k = 5;
int r = 0;
while( n >= k)
{
r += n/k;
k *= 5;
}
return r;
}
然后这个还可以扩展为s进制的情况,这个等我扩出来了再写^_^
算了,先写点初步的吧
就是对于s进制来说,如果s=a^p*b(并且a^p小于b) 这里a,b是不同的素数,那么上式中的k可以用b代替相应的,5的位置也要换上b的值^_^
浙公网安备 33010602011771号