def gcd(a,b):
while b:
a,b=b,a%b
return a
def init_divisors(a,b):
d=gcd(a,b)
i=1
while i*i<=d:
if d%i==0:
ans.append(i)
if i!=d//i:ans.append(d//i)
i+=1
ans.sort()
a,b=map(int,input().split())
ans=[]
init_divisors(a,b)
q=int(input())
for _ in range(q):
L,R=map(int,input().split())
l=0;r=len(ans)-1
while (l<r):
mid=l+r+1>>1
if ans[mid]<=R:l=mid
else: r=mid-1
if ans[r]>=L:
print(ans[r])
else:
print("-1")
蓝桥杯刷题--python-36
芝士小熊饼干2024-04-07 16:04
相关推荐
独行soc2 小时前
2025年渗透测试面试题总结-2025年HW(护网面试) 01(题目+回答)独行soc2 小时前
2025年渗透测试面试题总结-2025年HW(护网面试) 02(题目+回答)Yrrr120 小时前
Redis 持久化机制详解:RDB、AOF 原理与面试最佳实践(AOF篇)岁忧21 小时前
(LeetCode 每日一题) 2016. 增量元素之间的最大差值 (数组)一入JAVA毁终身21 小时前
面试第三期周方.1 天前
191. 位1的个数圣保罗的大教堂1 天前
leetcode 1432. 改变一个整数能得到的最大差值 中等Coding小公仔1 天前
LeetCode 48. 旋转图像辰熙咨询洪千武1 天前
洪千武—华为海外HRBP