2017年网易校招题 末尾0的个数
生活随笔
收集整理的這篇文章主要介紹了
2017年网易校招题 末尾0的个数
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
題目描述
輸入一個正整數n,求n!(即階乘)末尾有多少個0? 比如: n = 10; n! = 3628800,所以答案為2輸入描述:
輸入為一行,n(1 ≤ n ≤ 1000)輸出描述:
輸出一個整數,即題目所求 示例1輸入
10輸出
2思路:要統計末尾0的個數,只需要統計2和5的個數。因為n!,含因數2的數字有2,4,6,8,含5的只有5。故2的個數一定大于5,所以只需要統計5的個數即可得知末尾0的個數。
源代碼:
#include<stdio.h>
int main(){
int n,i,sum=0,t;
scanf("%d",&n);
for(i=2;i<=n;i++)
{
t=i;
while(t%5==0)
{
sum+=1;
t/=5;
}
}
printf("%d\n",sum);
}
總結
以上是生活随笔為你收集整理的2017年网易校招题 末尾0的个数的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 修改类名后依旧按照原先的类名进行加载
- 下一篇: 操作序列