最大公约数

最大公约数

辗转相除法,俩个整数a和b, a%b = c
a,b最大公约数就等于 b,c最大公约数

奇偶数判断

(a&1) == 0 a是偶数
(a&1) !=0 a是奇数

def get_largest_common2(a, b):
	big = max(a, b)
	small = min(a, b)	
	if big % small == 0:
		i += 1
		return small
	return get_largest_common2(big % small, small)

print(get_largest_common2(100,45))


# 更相减损术

def get_largest_common3(a, b):
	if a == b:
		return a
	big = max(a, b)
	small = min(a, b)
	return get_largest_common3(big - small, small) 
	
print(get_largest_common3(100,45))



# 暴力列举
def get_largest_common(a, b):
	big = max(a, b)
	small = min(a, b)
	if big % small == 0:
		return small
	for i in range(small // 2, 1, -1):
		# print(i)
		if small % i == 0 and big % i == 0:
			return i

	return 1

# print(get_largest_common(102,101))

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值