CF75C Modified GCD
题目描述
这里又是一道数学课作业题。在数学中,GCD 指的是最大公约数,计算两个正整数的 GCD 是一道简单的任务。
对于两个正整数来说,公约数指的是能够同时整除这两个数的数。
但你的老师想让你完成一道更难的任务:你需要在一个给定的区间内,从 $low$ 到 $high$(包含边界),找到两个整数 $a$ 和 $b$ 的最大公约数 $d$,即满足 $low \leq d \leq high$。也有可能在给定的区间内没有任何公约数。
你会得到两个整数 $a$ 和 $b$,接着有 $n$ 个询问。每个询问给出一个区间 $low$ 到 $high$,你需要对每个询问做出回答。
输入格式
第一行包含两个整数 $a$ 和 $b$,如上所述($1 \leq a, b \leq 10^9$)。
第二行包含一个整数 $n$,表示询问的个数($1 \leq n \leq 10^4$)。
接下来的 $n$ 行,每行包含两个整数,分别为 $low$ 和 $high$($1 \leq low \leq high \leq 10^9$),表示每个询问的区间。
输出格式
输出共 $n$ 行,第 $i$ 行输出输入中第 $i$ 个询问的结果。如果在该询问的区间内没有任何公约数,输出 $-1$。
说明/提示
由 ChatGPT 5 翻译