#AT2528. D - M<=ab

D - M<=ab

当前没有测试数据。

D - M<=ab

分数:400分

问题描述

给定正整数$N$和$M$。
找到最小的正整数$X$,满足以下两个条件之一,如果没有这样的整数,则输出$-1$。

  • $X$可以表示为介于$1$和$N$之间(包括$1$和$N$)的两个整数$a$和$b$的乘积。这里,$a$和$b$可以相等。
  • $X$至少为$M$。

约束

  • $1\leq N\leq 10^{12}$
  • $1\leq M\leq 10^{12}$
  • $N$和$M$是整数。

输入

从标准输入中以以下格式给出输入:

NN MM

输出

输出最小的正整数$X$,满足上述条件之一,如果没有这样的整数,则输出$-1$。


5 7
8

首先,$7$不能表示为介于$1$和$5$之间的两个整数的乘积。
其次,$8$可以表示为介于$1$和$5$之间的两个整数的积,比如$8=2\times 4$。

因此,你应该输出$8$。


2 5
-1

由于$1\times 1=1$,$1\times 2=2$,$2\times 1=2$,和$2\times 2=4$,只有$1$,$2$和$4$可以表示为介于$1$和$2$之间的两个整数的积, 所以没有大于或等于$5$的数字可以表示为这样两个整数的积。
因此,你应该输出$-1$。


100000 10000000000
10000000000

对于$a=b=100000$ $(=10^5)$,$a$和$b$的乘积是$10000000000$ $(=10^{10})$,这是答案。
请注意,答案可能不适合$32$位整数类型。