HDU 1124 FACTORIAL

这貌似也是道数学题。。找到方法就很简单。。

求尾数0的个数实际上是求阶乘中因子‘5’的个数,复杂度为o(n^2)直接查找计数可能超时,因此有如下算法:

#include <iostream>

using namespace std;


int main()

{
	
	int T;
	cin>>T;

	while(T--)

	{
		
		int n,ans=0;

		cin>>n;

		for (int i=5;i<=n;i*=5)

			ans+=n/i;

		cout<<ans<<endl;

	}

	return 0;

}
posted @ 2011-02-15 09:32  谁也打不过  阅读(207)  评论(0编辑  收藏  举报