Problem:
階乗 II

n! = n × (n − 1) × (n − 2) × ... × 3 × 2 × 1

を n の階乗といいます。例えば、12 の階乗は

12! = 12 × 11 × 10 × 9 × 8 × 7 × 6 × 5 × 4 × 3 × 2 × 1 = 479001600

となり、末尾に 0 が 2 つ連続して並んでいます。

整数 n を入力して、n! の末尾に連続して並んでいる 0 の数を出力するプログラムを作成してください。ただし、n は 20000 以下の正の整数とします。

Input

複数のデータが与えられます。各データに n (n ≤ 20000) が１行に与えられます。n が 0 の時入力の最後とします。

データの数は 20 を超えません。

Output

各データに対して n! の末尾に連続して並んでいる 0 の数を１行に出力して下さい。

Sample Input

2
12
10000
0

Output for the Sample Input

0
2
2499

Solution in JAVA (judge verdict: Wrong Answer)

import java.util.Scanner;

public class Main
{
	public static void main(String arg[])
	{
		Scanner scan = new Scanner(System.in);
		long n = scan.nextLong();


		String str = String.valueOf(fact(n));
		//System.out.println(str);
		char a[] = new char[str.length()];

		for(int i=0; i<str.length(); i++) 
		{
			a[i] = str.charAt(i);
		}

		int ans=0;
		for(int i=str.length()-1; i>=0; i--)
		{
			if(a[i] == '0')
				ans++;
			else
				break;
		}

		System.out.println(ans);
	}

	public static long fact(long n)
	{
		if(n<=1)
			return 1;
		n = n*fact(n-1);
		return n;
	}

}