纳米兔子
题号:NC222776
时间限制:C/C++/Rust/Pascal 1秒,其他语言2秒
空间限制:C/C++/Rust/Pascal 256 M,其他语言512 M
64bit IO Format: %lld

题目描述

  未来的科学家研究出了一种兔子,叫纳米兔子。
  纳米兔子的体型很小繁殖速度超快,科学家的实验室中有许多的“孵化小屋”,每组“孵化小屋”将进行m-1次实验,一开始有8个孵化小屋,编号为1到8,第1个小屋到第8个小屋中放着和编号数量相同的兔子。每次实验每两只在相邻小屋的兔子都会生出一只子一代的兔子。子一代的兔子将会放到父代中编号最小的小屋里。
  等到子一代兔子长大后,将上一代兔子移除出小屋。进行下一轮实验
  这次实验有很大实验价值,但不幸的是科学家的电脑被他的对手给入侵了,失去了数据中末尾0的个数,请你进行编程来帮助他求出一下。
  他想知道一共n组实验中第m行的中所有兔子数量相乘末尾零的个数,你来帮他计算一下数据

输入描述:

多组输入
每一组中 1 <= n <= 1015,  1 <= m <= 8
n 是有多少组“孵化小屋”
m 是第m代纳米兔子

输出描述:

n组实验中第m代中每一间兔子数量不为零的房间中兔子数量的乘积末尾零的个数
示例1

输入

复制
1 8
2 2

输出

复制
35
4

说明

第一行 1 代表一共有一组“孵化小屋” 8 代表“孵化小屋”第8代的兔子总数乘积末尾0的个数:一共35个
第二行 2 代表一共有两组“孵化小屋” 2 代表“孵化小屋”第2代的兔子总数乘积末尾0的个数:第一组“孵化小屋”中所有第2代兔子的数量第二组“孵化小屋”中所有第2代兔子的数量 末尾零个数2 2 = 4

备注:

相邻屋子兔子交配规则:
第一个屋子的第一只兔子轮流与第二个屋子的所有兔子交配并生下幼崽,接着第一个屋子的第二个兔子再重复上述操作,相邻的区间只交配一次
(注意:数据量较大,请选择较快的方式读入)