Problem:
Score : 500 points

Problem Statement

For an integer n not less than 0, let us define f(n) as follows:

f(n) = 1 (if n < 2)

f(n) = n f(n-2) (if n \geq 2)

Given is an integer N. Find the number of trailing zeros in the decimal notation of f(N).

Constraints

0 \leq N \leq 10^{18}

Input

Input is given from Standard Input in the following format:

N

Output

Print the number of trailing zeros in the decimal notation of f(N).

Sample Input 1

12

Sample Output 1

1

f(12) = 12 × 10 × 8 × 6 × 4 × 2 = 46080, which has one trailing zero.

Sample Input 2

5

Sample Output 2

0

f(5) = 5 × 3 × 1 = 15, which has no trailing zeros.

Sample Input 3

1000000000000000000

Sample Output 3

124999999999999995

Solution in PHP7 (7.0.15) (judge verdict: Accepted)

<?php
$N = trim(fgets(STDIN));
//list($A,$B) =  explode(" ",trim(fgets(STDIN)));
//$A =  explode(" ",trim(fgets(STDIN)));

if (($N % 2) == 0) {
  //var_dump(solv($N));
  printf("%d\n",solv3($N));
}
else {
  //var_dump(solv($N));
  printf("%d\n",0);
}

function solv($N) {
  $res = $N;
  while(1) {
     if ($N <= 2) break;
     $res =  bcmul($res , ($N - 2));
     $N=$N-2;
  }
  $len = strlen($res);
  $cnt=0;
  for($i=$len-1;$i>0;$i--) {
    if ($res[$i]=="0") $cnt++;
    else break;
  }
  return $cnt;
}

function solv2($N) {
  $res = 0;
  $xx = 5;
  while(1) {
    $res += intdiv($N,$xx);
    $xx = $xx * 5;
    if ($xx >= intdiv($N,10)) break;
  }
  return intdiv($res,2);
}
//https://atcoder.jp/contests/abc148/submissions/9070856
function solv3($N) {
  $r=0;
  for($i=1;2*5**$i<10**18;$i++) {
    $r+=intdiv($N,2*5**$i);
  }
  return $r;
}