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
相关推荐
No0d1es1 小时前
第13届蓝桥杯Python青少组中/高级组选拔赛(STEMA)2022年1月22日真题No0d1es4 小时前
第13届蓝桥杯Python青少组中/高级组选拔赛(STEMA)2021年11月27日真题牛客企业服务7 小时前
2025校招AI应用:校园招聘的革新与挑战m0_749317527 小时前
力扣-字母异位词No0d1es7 小时前
第13届蓝桥杯Python青少组_省赛_中/高级组_2022年4月17日真题Warren988 小时前
MySQL查询语句详解测试老哥11 小时前
如何写好测试用例?蒋星熠1 天前
字母异位词分组(每天刷力扣hot100系列)程序员三藏2 天前
Web UI自动化测试之PO篇JehanRio2 天前
谈谈毕业工作一年后的变化