#include "stdafx.h"
//N阶乘末尾有多少个0
int question1(int n)
{
int ret = 0;
while(n)
{
n /= 5;
ret += n;
}
return ret;
}
//N阶乘的二进制表示中最低位1的位置
int question2(int n)
{
int ret =0;
while(n)
{
n >>= 1;
ret += n;
}
return ret + 1;
}
int _tmain(int argc, _TCHAR* argv[])
{
printf("%d\n",question1(10));
printf("%d\n",question2(3));
printf("%d\n",question2(4));
return 0;
}
浙公网安备 33010602011771号