#6773. 【2016南海区赛甲组】约数

【2016南海区赛甲组】约数

题目描述

给出两个正整数 XXYY,求 XXYY 的最大公约数,奶牛可以轻松解决这个问题。
农夫 Farmer John 决定改一改题目去考验奶牛。农夫决定询问奶牛 QQ 个问题,每个问题的格式是这样的:
农夫给定两个正整数 aabb(保证 aba \le b),然后农夫询问奶牛:在 aabb 的范围内,有没有哪个整数既是 XX 的约数同时又是 YY 的约数?如果有,输出最大的那个;如果没有,输出 1-1

输入格式

第一行,两个正整数 XXYY
第二行,一个整数 QQ
接下来 QQ 行,每行两个正整数 aabb,保证 aba \le b

输出格式

QQ 行,每行一个整数,对应每个问题的答案。

样例

200 120
3
9 40
25 35
10 15
40
-1
10

样例解释

  • 第一个问题:在 994040 的范围内,既是 200200 的约数同时又是 120120 的约数的有 10,20,4010,20,40,最大的是 4040,输出 4040
  • 第二个问题:在 25253535 的范围内,没有公共约数,输出 1-1
  • 第三个问题:在 10101515 的范围内,只有 1010 是公共约数,输出 1010
10 10
2
1 6
5 5
5
5

样例解释

  • 第一个问题:在 1166 的范围内,1010 的约数有 1,2,5,101,2,5,10,公共约数即 1010 的约数,最大的是 55,输出 55
  • 第二个问题:在 5555 的范围内,只有 55,输出 55

数据范围

  • 对于 40%40\% 的数据:1X,Y1001 \le X, Y \le 1001Q1001 \le Q \le 1001ab1001 \le a \le b \le 100
  • 对于 100%100\% 的数据:1X,Y1091 \le X, Y \le 10^91Q300001 \le Q \le 300001ab1091 \le a \le b \le 10^9