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
相关推荐
csdn_aspnet1 小时前
Python 算法快闪 LeetCode 编号 70 - 爬楼梯一只机电自动化菜鸟3 小时前
一建机电备考笔记(40) 建筑机电施工—排水管道施工(含考频+题型)做人求其滴4 小时前
面试经典 150 题 380 274小卡不对头5 小时前
软考中级通过率怎样?软考中级哪个通过率高中小企业实战军师刘孙亮9 小时前
家居建材营销新趋势:数字化、体验式与可持续方向-佛山鼎策创局破局增长咨询有限公司此生决int9 小时前
算法从入门到精通——前缀和凯瑟琳.奥古斯特9 小时前
传输层核心功能解析天真小巫11 小时前
六年之约-2026.5.212301_8008951013 小时前
第九届蓝桥杯国赛b组--备战国赛版h酉鬼女又兒14 小时前
零基础入门计算机组成原理:控制器章节全考点汇总 | 寄存器 + 控制存储器 + 微指令