CF1759D Make It Round

题目描述

给定 $n$ 和 $m$, 我们可以把 $n$ 变为 $n\cdot k(1\leq k\leq m,k∈N^{*})$, 请输出末尾 $0$ 的个数最多的 $n\cdot k$。 - 例如, $481000$ 比 $1000010$ 末尾 $0$ 的个数更多。 - 如果有多个末尾 $0$ 个数最多的 $n\cdot k$, 则输出其中最大的一个。 - 如果不存在末尾 $0$ 个数更多的 $n\cdot k$, 则输出 $n\cdot m$。

输入格式

第一行输入一个整数 $t\ (1\leq t \leq 10^4)$, 表示数据组数。 之后的 $t$ 行,每行包含两个整数 $n$, $m\ (1\leq n,m \leq 10^9)$。

输出格式

对于每组数据,输出末尾 $0$ 的个数最多的 $n\cdot k\ (1\leq k\leq m,k∈N^{*})$。 如果有多个末尾 $0$ 个数最多的 $n\cdot k$, 则输出其中最大的一个。 如果不存在末尾 $0$ 个数更多的 $n\cdot k$, 则输出 $n\cdot m$。 ## 样例解释 在第一组数据中 $n=6,m=11$, 我们无法得到一个末尾有两个 $0$ 的数,因此我们令 $k=10$, 输出 $6\cdot 10=60$。(它的末尾有 $1$ 个 $0$, 且它比 $30$ 更大) 在第三组数据中 $n=13,m=5$, 所有可能的 $n\cdot k$ 末尾都没有 $0$, 因此我们输出 $n\cdot m=65$。

说明/提示

In the first case $ n = 6 $ , $ m = 11 $ . We cannot get a number with two zeros or more at the end, because we need to increase the price $ 50 $ times, but $ 50 > m = 11 $ . The maximum price multiple of $ 10 $ would be $ 6 \cdot 10 = 60 $ . In the second case $ n = 5 $ , $ m = 43 $ . The maximum price multiple of $ 100 $ would be $ 5 \cdot 40 = 200 $ . In the third case, $ n = 13 $ , $ m = 5 $ . All possible new prices will not end in $ 0 $ , then you should output $ n \cdot m = 65 $ . In the fourth case, you should increase the price $ 15 $ times. In the fifth case, increase the price $ 12000 $ times.