n的阶乘尾部有多少个连续的0

题目描述

编程输入n(n<=1000),求n的阶乘值(n!)尾部有多少个连续的0。
 

输入

一个整数n.
 

输出

一个整数
 

样例输入 [复制]

10

样例输出 [复制]

2
 
AC代码:
 1 import java.math.BigDecimal;
 2 import java.util.Scanner;
 3 
 4 public class Main {
 5 
 6     public static void main(String[] args) {
 7         Scanner sc = new Scanner(System.in);
 8         int n = sc.nextInt();
 9         BigDecimal num = new BigDecimal(1);
10         for (int i = 1; i <= n; i++) {
11             num = num.multiply(BigDecimal.valueOf(i));
12         }
13         String str = num.toString();
14         int count = 0;
15         for (int i = str.length()-1; i >=0 ; i--) {
16             if (str.charAt(i)=='0')
17                 count++;
18             else
19                 break;
20         }
21         System.out.println(count);
22     }
23 }

 

posted @ 2017-12-18 11:03  ixummer  阅读(1802)  评论(0编辑  收藏  举报