蓝桥杯刷题--python-36

4199. 公约数 - AcWing题库

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")

相关推荐
独行soc2 小时前
2025年渗透测试面试题总结-2025年HW(护网面试) 01(题目+回答)
linux·科技·安全·面试·职场和发展·区块链
独行soc2 小时前
2025年渗透测试面试题总结-2025年HW(护网面试) 02(题目+回答)
linux·科技·安全·面试·职场和发展·渗透测试·区块链
Yrrr120 小时前
Redis 持久化机制详解:RDB、AOF 原理与面试最佳实践(AOF篇)
数据库·redis·面试·职场和发展
岁忧21 小时前
(LeetCode 每日一题) 2016. 增量元素之间的最大差值 (数组)
java·c++·算法·leetcode·职场和发展·go
一入JAVA毁终身21 小时前
面试第三期
面试·职场和发展
周方.1 天前
191. 位1的个数
数据结构·算法·leetcode·链表·职场和发展
圣保罗的大教堂1 天前
leetcode 1432. 改变一个整数能得到的最大差值 中等
算法·leetcode·职场和发展
Coding小公仔1 天前
LeetCode 48. 旋转图像
算法·leetcode·职场和发展
辰熙咨询洪千武1 天前
洪千武—华为海外HRBP
华为·职场和发展·业界资讯·tup股权