階乘的0 【南陽 oj 題目84】



點擊打開鏈接


描述 計算n!的十進制表示最後有多少個0
輸入
第一行輸入一個整數N表示測試數據的組數(1<=N<=100)
每組測試數據佔一行,都只有一個整數M(0<=M<=10000000)
輸出
輸出M的階乘的十進制表示中最後0的個數
比如5!=120則最後的0的個數爲1
樣例輸入
6
3
60
100
1024
23456
8735373
樣例輸出
0
14
24
253
5861
2183837

題解:本題求n!有幾個零,其實就是求n!可以分解出幾個5。



#include <iostream>
#include <cstdio>
#include <cmath>
using namespace std;
int main()
{
	int t;
	long long a,sum;
	while(cin>>t)
	{
		while(t--)
		{	sum=0;
			cin>>a;
			for(int i=0;;i++)
			{	sum=sum+a/5;
				if(a/5>=5)
					a=a/5;
				else
					break;
			}
			cout<<sum<<endl;
		}
	}
	return 0;
}



發佈了43 篇原創文章 · 獲贊 19 · 訪問量 2萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章