#65. [NOI Online 2022 入门组] 数学游戏

内存限制:256 MiB 时间限制:1000 ms 标准输入输出
题目类型:传统 评测方式:文本比较
上传者: xhgua

题目描述

Kri 喜欢玩数字游戏。

一天,他在草稿纸上写下了 对正整数 ,并对于每一对正整数计算出了

可是调皮的 Zay 找到了 Kri 的草稿纸,并把每一组的 都擦除了,还可能改动了一些

现在 Kri 想请你帮忙还原每一组的 ,具体地,对于每一组中的 ,你需要输出最小的正整数 ,使得 。如果这样的 不存在,也就是 Zay 一定改动了 ,那么请输出

注: 表示 的最大公约数,也就是最大的正整数 ,满足 既是 的约数,又是 的约数。

输入格式

第一行一个整数 ,表示有 对正整数

接下来 行,每行两个正整数 ,含义见题目描述。

输出格式

对于每对数字输出一行,如果不存在满足条件的正整数 ,请输出 ,否则输出满足条件的最小正整数

样例

样例输入 1

1
10 240

样例输出 1

12

样例输入 2

3
5 30
4 8
11 11

样例输出 2

6
-1
1

样例输入 3

见附件中的 math3.in

样例输出 3

见附件中的 math3.out

样例输入 4

见附件中的 math4.in

样例输出 4

见附件中的 math4.out

数据范围与提示

【样例 1 解释】

【数据范围】

对于 的数据,

对于 的数据,

对于另 的数据,

对于另 的数据,

对于 的数据,